#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
//出现余数为零,或者余数出现过,即为循环节终止。
int a[10001];
bool hash[100001];
int main(){
int T;
cin>>T;
while(T--){
int n,cn=0,mod=1;
bool sig=true;
cin>>n;
if(n==1 || n==-1 ){
cout<<n<<endl;
continue;
}
n<0?(n*=-1,sig^=1):1;
memset(hash,false,sizeof(bool)*n);
hash[mod]=true;
while(1){
a[cn++]=mod*10/n;
mod=(mod*10)%n;
if(hash[mod]||!mod) break;
hash[mod]=true;
}
printf(!sig?"-0.":"0.");
for(int i=0;i<cn;i++){
cout<<a[i];
}
cout<<endl;
}
return 0;
}
hdu 2522 A simple problem
最新推荐文章于 2019-11-24 01:29:34 发布