社区讨论

60分求助!

P8584 探索未知参与者 3已保存回复 3

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
3 条
当前快照
1 份
快照标识符
@lo7rfa82
此快照首次捕获于
2023/10/27 06:32
2 年前
此快照最后确认于
2023/10/27 06:32
2 年前
查看原帖
60分求助:
CPP
#include<bits/stdc++.h> 
using namespace std; 
long long n,a[1001],b[1001],opt[1001],ansz,ansm,ans;
inline long long read()
{
	long long f=1,x=0;
	char ch=getchar();
	while(ch>'9'||ch<'0'){
		if(ch=='-')f=-1;
		ch=getchar();
	}
	while(ch>='0'&&ch<='9'){
		x=(x<<1)+(x<<3)+(ch^48);
		ch=getchar();
	} 
	return x*f;
}

int main()
{
	std::ios::sync_with_stdio(false);
	n=read();
	ansz=read();ansm=read();opt[1]=read();ansz*=opt[1];
	for(int i=2;i<=n;i++){
		a[i]=read();b[i]=read();opt[i]=read();
		if(opt[i]==1){
			long long l=ansm;
			ansz*=b[i];ansm*=b[i];ansz+=a[i]*l;	
		}
		else{
			long long l=ansm;
			ansz*=b[i];ansm*=b[i];ansz-=a[i]*l;
		}
		
		long long t=__gcd(ansz,ansm);

		ansz/= t,ansm/=t;
	}
	
	
	if(ansz%ansm==0)cout<<ansz/ansm<<endl;
	else cout<<ansz<<'/'<<ansm<<endl;
	return 0;
}

比如说第一组数据 输入: 10 22 32 2 32 240 1 34 3 2 67 7 1 83 7 1 39 600 2 86 810 2 61 24 1 4 2 2 95 810 2 答案输出: 2221343/226800 实际输出: 1344559/113400 求助求助,马上就要CSP-J/S了,这还是第一题,挺急的

回复

3 条回复,欢迎继续交流。

正在加载回复...