这就A了?
查看原帖
这就A了?
636097
liumuyvan楼主2022/11/16 20:35

本蒟蒻懒得去学CRT了,写了个暴力,稍微优化了一点,就A了?

代码如下,请大佬帮我看一下我这是怎么A的,是不是因为数据太水呢?

#include<iostream>
#include<cstdio>
#include<cmath>
#include<algorithm>
using namespace std;
inline int read(){
	int x=0,f=1;
	char ch=getchar();
	while(ch>'9'||ch<'0'){
		if(ch=='-'){
			f=-1;
		}
		ch=getchar();
	}
	while(ch<='9'&&ch>='0'){
		x=(x<<1)+(x<<3)+ch-'0';
		ch=getchar(); 
	}
	return x*f;
}
struct node{
	long long mod,s;
}a[20];
bool cmp(node x,node y){
	return x.mod>y.mod;
}
int main(){
	int n=read();
	for(int i=1;i<=n;i++)	a[i].mod=read(),a[i].s=read();
	sort(a+1,a+n+1,cmp);
	long long as=a[1].s,now=1;
	for(int i=2;i<=n;i++){
		long long f=now*a[i-1].mod/__gcd(now,a[i-1].mod);
		while(!(as%a[i].mod==a[i].s))	as+=f;
		now=f;
	}
	printf("%lld",as);
	return 0;
}
2022/11/16 20:35
加载中...