还是看不懂题意的问题,看着数据猜题意猜了好久没有猜出来,其实就是把一串数字的最后一位移到最前面,
写一下十进制的乘法可以同理的出来其他进制的乘法,设原来的数字为s,最后一位为b,则s*c的最后一位
s*c%a,其实是s倒过来那个数的第二位,然后依此类推,知道乘积+原来的进位==最低位。
#include<cstdio>
#include<iostream>
#include<vector>
#include<queue>
#include<algorithm>
#include<string>
#include<cstdlib>
#include<map>
#include<set>
#include<cmath>
#include<cstring>
#include<cctype>
#include<climits>
#include<memory>
#include<climits>
#include<cstdlib>
using namespace std;
#define LL long long
#define INT (1<<31)-1;
LL a[10][105],b[10][105];
int main()
{
int a,b,c;
while(cin>>a>>b>>c)
{
int ans=b*c%a;
int temp=b*c/a;
int len=1;
/* while(ans!=b||temp)
{
int tt=ans*c+temp;
temp=tt/a;
ans=tt%a;
len++;
}*/
int s=b*c;
while(s!=b)
{
s=s%a*c+s/a;
len++;
}
cout<<len<<endl;
}
return 0;
}