89pts求调
查看原帖
89pts求调
918478
All_Wrong_Answer楼主2025/1/20 20:19
#include <bits/stdc++.h>
using namespace std;
int da[1000005];
int mod[100005];
int f[100005];
int main(){
	int x,y,s=0,fl=0,wz=0,enl=0;
	cin>>x>>y;
	if(x%y==0){
		cout<<x/y<<".0";
		return 0;
	}
	mod[1]=(x%y);
	cout<<x/y<<".";
	if(x/y<100000) enl=5;
	else if(x/y<10000) enl=4;
	else if(x/y<1000) enl=3;
	else if(x/y<100) enl=2;
	else enl=1;
	enl-=3;
	while(1){
		s++;
		int t=mod[s];
		if(f[t]==0) f[t]=s;
		else{
			wz=f[t];
			break
			;
		}
		if(t==0) break;
		t*=10;
		mod[s+1]=(t%y);
		da[s]=(t/y);
	}
	int u=0;
	for(int i=1;i<s;i++){
		enl++;
		if(wz==i){
            if(enl%76==0) cout<<endl;
			enl++;
			cout<<"(";
			u=1;
		}
		cout<<da[i];
		if(enl%76==0) cout<<endl;
		
	}
	if(enl)
	if(u==1) cout<<")";
	return 0;
}
2025/1/20 20:19
加载中...