[ZOJ 1504] Slots of Fun

http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=1504

 

题目大意:

按照上图方式用圆圈叠一个三角形,每个圆圈内有一个小写字母。

如果有至少一个字母相同的圆圈组成的等边三角形,则win。比如上图有由a和c构成的2个等边三角形。若这样的等边三角形不存在,则lose。

若win,打印所有能构成等边三角形的字母(按照a..z的顺序!),若lose,输出LOOOOOOOOSER!

 

解题思路:

n不是很大,一般都是枚举。

对同一个字母,例如a,枚举出3个不同的a圈,计算一下是不是等边的。

由于要计算等边,不防对每个圆圈赋予一个座标,如图可以看出横纵座标都是有关系的,可以以随便什么方式建立一个座标系。

例如:

设顶端圆圆心为座标原点,作xy轴,假设圆半径为1

为了避免使用浮点运算的时候的精度问题,所有座标都可以用整数来存储,因为判断等边的时候用边长的平方也是可以的。

 

 

发布了43 篇原创文章 · 获赞 1 · 访问量 4万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章