#include<iostream>
#include<string.h>
using namespace std;
int d[1000000];
int fun(int x){ //模擬除法 一點一點的除 直到 一個數出現兩次 或者除盡 就結束 返回其長度
int k=1,l=1;
memset(d,0,sizeof(d));
while(1){
k*=10;
k%=x;
d[k]++;
l++;
if(d[k]==2||k==0) break;
}
return l;
}
int main(){
int n;
cin>>n;
int maxx=0,max=0;
for(int i=1;i<=n;i++){// 對n個數進行一個 取最大的操作
if(fun(i)>maxx){
maxx=fun(i);
max=i;
}
}
cout<<max<<endl;
return 0;
}
51nod 1035 最長的循環節【模擬除法】
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.