刚学中国剩余定理的蒟蒻,有个奇怪的问题
查看原帖
刚学中国剩余定理的蒟蒻,有个奇怪的问题
343342
Obviathy楼主2022/3/2 23:41
#include<bits/stdc++.h>
#define ll long long
#define INF 0x3f3f3f3f3f3f
using namespace std;
const int N = 20;
ll a[N],b[N],tim=1;
int n; 
int main(){
	cin >> n;
	for(int i = 0;i < n;i ++){
		scanf("%lld%lld",&a[i],&b[i]);
		tim*=a[i];
	}
	ll x;
	for(int i = 0;i < n;i ++){
		ll t = tim/a[i];
		for(ll j = t;j <= INF;j += t)
			if(j % a[i] == 1){
				x += j * b[i]%tim;
				break;
			}
	}
	cout<<x%tim<<endl;
	return 0;
}

代码交上去全WA,我下载了第一个点,本机测试程序输出的结果和答案一样,但评测就过不了。我看了看第一个点的read部分,一模一样的代码我重复交了几次,一会儿说read 3,一会儿说read 6,这是怎么回事?之前刷CF题时也遇到过,当时是因为没初始化大小。这里是否也有这样的问题?

2022/3/2 23:41
加载中...