jrMz and angles(水题)
jrMz and angles
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)
Total Submission(s): 1071 Accepted Submission(s): 560
For each test case, the only line contains two integers n,m(1≤n,m≤100) with a white space separated.
4 8
3 10
5 8
In test case 1, jrMz can choose 1 angle which belongs to the first type and 2 angles which belong to the second type, because 90+135+135=360. In test case 2, jrMz can choose 6 angles which belong to the first type, because6\times60=360. In test case 3, jrMz can’t make up an angle of 360 degrees.
import java.util.Scanner;
public class Main {
//(n - 2) * 180/n
private static Scanner cin;
static{
cin = new Scanner(System.in);
}
static double getAng(int x){
return (x - 2.0) * 180.0 / x;
}
static boolean isEqual(double x1, double x2){
if(Math.abs(x1 - x2) < 1e-15){
return true;
}else{
return false;
}
}
static boolean work(int n, int m){
double x1 = getAng(n);
double x2 = getAng(m);
for(int i = 0; i * x1 <= 360.0; i++){
for(int j = 0; i * x1 + j * x2 <= 360.0;j++){
double temp = i * x1 + j * x2;
if(isEqual(temp, 360)){
return true;
}
}
}
return false;
}
public static void main(String[] args) {
int T;
T = cin.nextInt();
while(T-- > 0){
int n = cin.nextInt();
int m = cin.nextInt();
if(work(n, m)){
System.out.println("Yes");
}else{
System.out.println("No");
}
}
}
}
2 seconds
256 megabytes
standard input
standard output
Gerald is setting the New Year table. The table has the form of a circle; its radius equals R. Gerald invited many guests and is concerned whether the table has enough space for plates for all those guests. Consider all plates to be round and have the same radii that equal r. Each plate must be completely inside the table and must touch the edge of the table. Of course, the plates must not intersect, but they can touch each other. Help Gerald determine whether the table is large enough for n plates.
The first line contains three integers n, R and r (1 ≤ n ≤ 100, 1 ≤ r, R ≤ 1000) — the number of plates, the radius of the table and the plates' radius.
Print "YES" (without the quotes) if it is possible to place n plates on the table by the rules given above. If it is impossible, print "NO".
Remember, that each plate must touch the edge of the table.
The possible arrangement of the plates for the first sample is:

题意:
给定一个大圆的半径 R 以及 n 个小院的半径 r 。
问能否把这 n 个小圆贴着大圆边缘放下。
思路:
2*PI/(2 * a)就好了;注意精度要加上1e-15
代码:
#include <iostream>
#include <cstdio>
#include <cstring>
#include <cmath>
#include <algorithm>
using namespace std;
const double PI = acos(-1.0); int main(){
int n;
double R, r;
while(~scanf("%d%lf%lf", &n, &R, &r)){
if(n == ){
if(R >= r){
puts("YES");
}else{
puts("NO");
}
continue;
}
if(R == r){
if(n <= )
puts("YES");
else
puts("NO");
continue;
}
double a = asin(1.0 * r/(R - r));
double cnt = 2.0 * PI / ( * a);
cnt += 1e-;
if(n <= cnt){
puts("YES");
}else{
puts("NO");
}
}
return ;
}
jrMz and angles(水题)的更多相关文章
- hdu 2393:Higher Math(计算几何,水题)
Higher Math Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total ...
- HDOJ 2317. Nasty Hacks 模拟水题
Nasty Hacks Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Tota ...
- ACM :漫漫上学路 -DP -水题
CSU 1772 漫漫上学路 Time Limit: 1000MS Memory Limit: 131072KB 64bit IO Format: %lld & %llu Submit ...
- ytu 1050:写一个函数,使给定的一个二维数组(3×3)转置,即行列互换(水题)
1050: 写一个函数,使给定的一个二维数组(3×3)转置,即行列互换 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 154 Solved: 112[ ...
- [poj2247] Humble Numbers (DP水题)
DP 水题 Description A number whose only prime factors are 2,3,5 or 7 is called a humble number. The se ...
- gdutcode 1195: 相信我这是水题 GDUT中有个风云人物pigofzhou,是冰点奇迹队的主代码手,
1195: 相信我这是水题 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 821 Solved: 219 Description GDUT中有个风云人 ...
- BZOJ 1303 CQOI2009 中位数图 水题
1303: [CQOI2009]中位数图 Time Limit: 1 Sec Memory Limit: 162 MBSubmit: 2340 Solved: 1464[Submit][Statu ...
- BC之jrMz and angles
jrMz and angles Accepts: 594 Submissions: 1198 Time Limit: 2000/1000 MS (Java/Others) Memory Lim ...
- 第十一届“蓝狐网络杯”湖南省大学生计算机程序设计竞赛 B - 大还是小? 字符串水题
B - 大还是小? Time Limit:5000MS Memory Limit:65535KB 64bit IO Format: Description 输入两个实数,判断第一个数大 ...
随机推荐
- JProfiler 9版本注册码(亲测可用!!!)
JProfiler 9版本注册码(亲测可用!!!) 按默认选择“Single or evaluation license” ,Name 和 Company 随意填!!! JProfiler 9.2 ...
- [转]css选择器优先级深入理解
转载自:http://www.jb51.net/css/67029.html 一.基础选择器 css基础选择器有标签选择器.类选择器.id选择器.通用选择器 1.标签选择器 每个html页面都由很多个 ...
- UI设计 - 手机列表风格总结
1 概述 1.1 背景 对UI设计过程中常见的列表风格进行总结.希望对后续的设计工作有所帮助 1.2 预期读者 UI设计师,用户体验设计师,项目经理,美工 1.3 ...
- C++ StringBuilder类
#ifndef __GTL_STRINGBUILDER_H_ #define __GTL_STRINGBUILDER_H_ #include <list> #include <str ...
- Elasticsearch与Solr 选型
转自:http://blog.csdn.net/jameshadoop/article/details/44905643 搜索引擎选择: Elasticsearch与Solr 搜索引擎选型调研文档 E ...
- vnc viewer on Ubuntu
我使用的是putty和SSL/SSH Vnc Viewer.因为刚入坑,也希望小白们能少走弯路,所以本贴写得比较细. 先说说vnc server和 vnc viewer的区别:server用于服务器, ...
- 【5】JVM-垃圾收集器
通过学习了解到现在商用的JVM中的垃圾收集采用的是分代收集算法,即针对不同年代采用不同的收集算法.在JVM中,GC主要作用于堆内存中,堆内存又被划分为新生代和老年代,由于新生代对象绝大多数是朝生夕死, ...
- 如何确定拍照时,相机屏幕是横屏or竖屏?
http://www.eoeandroid.com/thread-80028-1-1.html TAG_DATETIME时间日期 TAG_FLASH闪光灯 TAG_GPS_LATITUDE纬度 TAG ...
- Android 开源动画框架:NineOldAndroids
介绍 Android 平台提供两种动画系统:Property Animation(Android 3.0引入)和View Animation.这两种动画都可供选择,但是Property Animati ...
- C#常用数据类型间的转换
数据类型有很多种,数据类型间的转换也是有很多的方法,如果不细心整理的话等到用的时候再查就会显得很浪费时间,所以决心整理出这篇博文.主要是讲解常用数据类型之间的转换方法以及常见数据类型所占字节数. 字节 ...