来自蒟蒻的求助 Orz!
  • 板块P1572 计算分数
  • 楼主YSGTX
  • 当前回复5
  • 已保存回复5
  • 发布时间2021/12/4 17:08
  • 上次更新2023/11/3 22:56:41
查看原帖
来自蒟蒻的求助 Orz!
531213
YSGTX楼主2021/12/4 17:08

有没有大佬帮忙看看哪里错了○| ̄|_

WA了6,9,10

#include<bits/stdc++.h>
using namespace std;
long long cnt=0,m=1,z=0,zi[10005],mi[10005];
char c[10005],fi[10005],t;
int main()
{
	ios::sync_with_stdio(0);
	cin.tie(0);
	cout.tie(0);
	cin>>zi[++cnt]>>t;
	cin>>mi[cnt];
	int a=__gcd(mi[cnt],zi[cnt]);
	mi[cnt]/=a;
	zi[cnt]/=a;
	m*=mi[cnt];
	while(cin>>t)
	{
		fi[cnt]=t;
		cin>>zi[++cnt]>>t;
		cin>>mi[cnt];
		int a=__gcd(mi[cnt],zi[cnt]);
		mi[cnt]/=a;
		zi[cnt]/=a;
		m*=mi[cnt];
	}
	z+=zi[1]*(m/mi[1]);
	for(int i=2;i<=cnt;i++)
	{
		if(fi[i-1]=='+')z+=zi[i]*(m/mi[i]);
		else z-=zi[i]*(m/mi[i]);
	}
	if(z%m==0)return cout<<z/m,0;
	else if(m%z==0)m/=z,z=1;
	else
	{
		int a=__gcd(m,z);
		m/=a;
		z/=a;
	}
	cout<<z<<"/"<<m;
}

2021/12/4 17:08
加载中...