百度之星2015资格赛 放盘子

放盘子

Time Limit: 2000/1000 MS (Java/Others)

Memory Limit: 65536/65536 K (Java/Others)

Problem Description

小度熊喜欢恶作剧。今天他向来访者们提出一个恶俗的游戏。他和来访者们轮流往一个正多边形内放盘子。最后放盘子的是获胜者,会赢得失败者的一个吻。玩了两次以后,小度熊发现来访者们都知道游戏的必胜策略。现在小度熊永远是先手,他想知道他是否能获胜。

注意盘子不能相交也不能和多边形相交也不能放在多边形外。就是说,盘子内的点不能在多边形外或者别的盘子内。

Input

第一行一个整数TT,表示TT组数据。每组数据包含33个数n,a,r
(4 \leq n \leq 100,0 < a < 1000,0 < r < 1000)n,a,r(4≤n≤100,0<a<1000,0<r<1000)

nn是偶数,代表多边形的边数,aa代表正多边形的边长,rr代表盘子的半径。

Output

对于每组数据,先输出一行

Case #i:

然后输出结果.如果小度熊获胜,输出”Give me a kiss!” 否则输出”I want to kiss you!”

Sample Input

2
4 50 2.5
4 5.5 3

Sample Output

Case #1:
Give me a kiss!
Case #2:
I want to kiss you!

Hint

在第一组样例中,小度熊先在多边形中间放一个盘子,接下来无论来访者怎么放,小度熊都根据多边形中心与来访者的盘子对称着放就能获胜。

简单的博弈,这个Hint给的实在是太明显了,只要能够在中间放一个,那么先手肯定赢,所以我们只需要判断可不可以在中间放一个盘子即可,也就是判断这个多边形的中心到各边中点的距离是否大于盘子的半径。

#include <cstdio>
#include <cstring>
#include <cmath>
#define Pi 3.1415926
#define EPS 1e-9
int main()
{
	int T,t=1;
	scanf("%d",&T);
	while(T--)
	{
		int n;
		double a,r;
		scanf("%d%lf%lf",&n,&a,&r);
		double R = a/2/tan(Pi/n);
		//printf("%lf",R);
		if(R - r >= EPS) printf("Case #%d:\nGive me a kiss!\n",t++);
		else printf("Case #%d:\nI want to kiss you!\n",t++);
	}
	return 0;
}
时间: 2024-10-08 21:40:23

百度之星2015资格赛 放盘子的相关文章

百度之星2015资格赛 IP聚合

IP聚合 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) Problem Description 当今世界,网络已经无处不在了,小度熊由于犯了错误,当上了度度公司的网络管理员,他手上有大量的 IP列表,小度熊想知道在某个固定的子网掩码下,有多少个网络地址.网络地址等于子网掩码与 IP 地址按位进行与运算后的结果,例如: 子网掩码:A.B.C.D IP 地址:a.b.c.d 网络地址:

百度之星2015资格赛 列变位法解密

列变位法解密 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) Problem Description 列变位法是古典密码算法中变位加密的一种方法,具体过程如下 将明文字符分割成个数固定的分组(如5个一组,5即为密钥),按一组一行的次序整齐排列,最后不足一组不放置任何字符,完成后按列读取即成密文. 比如: 原文:123456789 密钥:4 变换后的矩阵: 1234 5678 9xxx

百度之星2015资格赛 大搬家

大搬家 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) Problem Description 近期B厂组织了一次大搬家,所有人都要按照指示换到指定的座位上.指示的内容是坐在位置ii上的人要搬到位置jj上.现在B厂有NN个人,一对一到NN个位置上.搬家之后也是一一对应的,改变的只有位次. 在第一次搬家后,度度熊由于疏忽,又要求大家按照原指示进行了一次搬家.于是,机智的它想到:再按这个

【百度之星2014~资格赛解题报告】

声明 笔者最近意外的发现 笔者的个人网站http://tiankonguse.com/ 的很多文章被其它网站转载,但是转载时未声明文章来源或参考自 http://tiankonguse.com/ 网站,因此,笔者添加此条声明. 郑重声明:这篇记录<标题>转载自 http://tiankonguse.com/ 的这条记录:http://tiankonguse.com/record/record.php?id=666 前言 最近要毕业了,有半年没做比赛了.这次参加百度之星娱乐一下.现在写一下解题报

百度之星2014资格赛 1004 - Labyrinth

先上题目: Labyrinth Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 2911    Accepted Submission(s): 1007 Problem Description 度度熊是一只喜欢探险的熊,一次偶然落进了一个m*n矩阵的迷宫,该迷宫只能从矩阵左上角第一个方格开始走,只有走到右上角的第一个格子才算走出迷宫,每一

百度之星2014资格赛 1003 - Xor Sum

先上代码: Xor Sum Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 132768/132768 K (Java/Others)Total Submission(s): 7837    Accepted Submission(s): 3350 Problem Description Zeus 和 Prometheus 做了一个游戏,Prometheus 给 Zeus 一个集合,集合中包含了N个正整数,随后 Prometheus

&lt;百度之星2014资格赛&gt;Disk Schedule 报告

Disk ScheduleTime Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 780    Accepted Submission(s): 119 Problem Description 有很多从磁盘读取数据的需求,包括顺序读取.随机读取.为了提高效率,需要人为安排磁盘读取.然而,在现实中,这种做法很复杂.我们考虑一个相对简单的场景. 磁盘有

百度之星2015 1005 下棋

思路: 对于任意一个格子,设国王到达这个格子至少需要x步,骑士到达这个格子至少需要y步,则: 对于这个格子, 1)国王到达这个格子需要的步数为:x+k步,其中k=0,1,2,3,4,5,... 2)骑士到达这个格子需要的步数为:x+2*k步,其中k=0,1,2,3,4,5,... 然后对1000*1000个格子都算一遍最小相遇的步数,然后再取个最小值就行了. /*百度之星2015 1005 下棋 思路: 对于任意一个格子,设国王到达这个格子至少需要x步,骑士到达这个格子至少需要y步,则: 对于这

百度之星2018资格赛1002题解

作为退役的老人家来光顾光顾百度之星. 据说资格赛水过一道题就行...就写那个签到题吧.orz 题目糊上,,, 度度熊的字符串课堂开始了!要以像度度熊一样的天才为目标,努力奋斗哦! 为了检验你是否具备不听课的资质,度度熊准备了一个只包含大写英文字母的字符串 A[1,n]=a1a2?anA[1,n]=a?1??a?2???a?n??,接下来他会向你提出 qq 个问题 (l,r)(l,r),你需要回答字符串 A[l,r]=alal+1?arA[l,r]=a?l??a?l+1???a?r?? 内有多少个