本题据说是google的面试题。
答案是22次。
C语言编程实现如下:
因为一天内实际上是钟表走了两圈。
即AM与PM。
所以只算AM,再将之乘上2即可。
实际上这是一个圆周内的追击问题。
分针比时针快,分针不停的去追时针。
分针每分钟走6度,时针每分钟走0.5度。
则将12个小时分成12场比赛。
第一场比赛,都在12,所以不用追击。
以后,
第二场,1:00,两者相距30度,故(30)/(6-0.5)
第三场,2:00,两者相距60度,故(60)/(6-0.5)
后边,以此类推。
#include <stdio.h>
int main()
{
int hour = 30;
for(int count=0;count<11;count++)
{
//此处加上0.5是为了四舍五入
int min = ((count*hour)/(6-0.5))+0.5;
printf("%d:%d\n",count,min);
}
return 0;
}