求教
查看原帖
求教
1396891
wangqiuhan楼主2024/11/1 14:31

对了俩数据点

#include<bits/stdc++.h>
using namespace std;
int	n,f,ans,r;
long long hkw(long long x,long long y){
	int z=1;
	for(int j=1;j<=f;j++)
		z*=10;
	y=y*10+x%z;
	return y;
}
int main(){
    cin>>n>>f;
    int i;
    long long n1=n,k[10000];
	while(i<=1000){
		i++;
		ans++;
		n1*=n;
		n1%=10000;
		k[i]=hkw(n1,0);
		if(k[i]==k[2] && i!=2 && i-1!=1 && k[i-1]==k[1]){
			 r=1;
			break;
		} 
	}
	if(r=1)	cout<<ans-2;
	else cout<<-1;
	return 0;
}
2024/11/1 14:31
加载中...