【mxqz】WA了2,9,10三个点
查看原帖
【mxqz】WA了2,9,10三个点
233815
zhjzhmh楼主2021/12/5 15:39
#include <bits/stdc++.h>
using namespace std;
unsigned long long n,fm=1,tfm,yf,fz,zs,zsw,fmw;
int fg(long long x)
{
	int ans=0;
	while(x) x/=10,ans++;
	return ans;
}
int main()
{
	cin>>n;fm=1; 
	for(unsigned long long i=1;i<=n;i++)
	{
		tfm=fm*i/__gcd(fm,i);
		fz=fz*tfm/fm+tfm/i;fm=tfm;
		yf=__gcd(fz,fm);
		fz/=yf,fm/=yf;
	}
	fz*=n;yf=__gcd(fz,fm);fz/=yf,fm/=yf;zs=fz/fm;fz%=fm;
	if(fz==0) {cout<<zs;return 0;}
	zsw=fg(zs),fmw=fg(fm);
	for(int i=1;i<=zsw;i++) cout<<' ';cout<<fz;puts("");
	if(zs>0) cout<<zs;for(int i=1;i<=fmw;i++) cout<<'-';puts("");
	for(int i=1;i<=zsw;i++) cout<<' ';cout<<fm;
}

以上是代码

2021/12/5 15:39
加载中...