题目大意:
一个怪异的钟表从0到59只有一个分针。只有一枚特殊的硬币投进去他才会动。硬币数量不限制。当投一个d硬币时,分针转d次当前时间。问最少需要多少硬币才能使分针转到0
解题思路:
模拟投币过程就行了
代码如下:
#include<stdio.h>
#include<string.h>
#include<math.h>
#include<stdlib.h>
int main()
{
int s,d,count;
int mul;
int clock[60];
int flag;
int current;
while(scanf("%d%d",&s,&d)!=EOF&&d)
{
memset(clock,0,sizeof(clock));
count=0;
flag=0;
clock[s]=1;
while(s)
{
s=(s*d+s)%60;
if(clock[s])
{
flag=1;
break;
}
clock[s]=1;
count++;
}
if(flag)
{
printf("Impossible\n");
}
else
{
printf("%d\n",count);
}
}
return 0;
}