题意:分数A/B的小数点后第几位为C。
思路:暴力模拟前300位就能AC。
感觉这个题有点坑,如果循环节很长怎么办。总感觉不有点不严谨。
#include<bits/stdc++.h>
using namespace std;
const int MAXN = 300;//看完数据发现215就能过
int main()
{
int a, b, c;
while(~scanf("%d%d%d",&a,&b,&c))
{
int ans = -1;
for(int i = 1; i <= MAXN; i++)
{
a = a * 10;
if(a / b == c){ ans = i; break; }
a = a % b;
}
printf("%d\n",ans);
}
return 0;
}