[luogu P1495] 【模板】中国剩余定理(CRT)/曹冲养猪

题目

https://www.luogu.com.cn/problem/P1495


解题思路

信息学奥赛一本通上的。
额,模板


代码

#include<iostream>
using namespace std; 
typedef long long LL; 
LL a[11],b[11],N,M=1,Ans=0; 
void Read(){
	cin>>N; 
	for(LL i=1;i<=N;i++)
	 cin>>a[i]>>b[i],M*=a[i]; 
}
void Exgcd(LL a,LL b,LL &d,LL &x,LL &y){
	if (b==0) {d=a;x=1;y=0;}
	else {
		Exgcd(b,a%b,d,x,y); ;
		LL t=x;x=y;y=t-a/b*y; 
	}
}
void Intchina(){
	LL Mi,x,y,i,d; 
	for(i=1;i<=N;i++){
		Mi=M/a[i]; 
		Exgcd(Mi,a[i],d,x,y); 
		Ans=((Ans+Mi*x*b[i])%M+M)%M; 
	}
	cout<<Ans<<endl;
}
int main(){
	Read(); 
	Intchina(); 
	return 0; 
}
已标记关键词 清除标记
©️2020 CSDN 皮肤主题: Age of Ai 设计师:meimeiellie 返回首页