题解 P1495 【曹冲养猪】
LinkyChristian · · 题解
孙子定理的模板题
不算很难,不过你不会中国剩余定理,真的不会做。
因此,本篇题解主要是讲一下中国剩余定理。
中国剩余定理:
大概就是有一个未知数
注意前提条件
设
设
则答案
因为
最后放代码
#include<bits/stdc++.h>
using namespace std;
typedef unsigned long long ull;
int n,a[11],b[11];
ull sum=1,t[11],ans;
int main()
{
cin>>n;
for(int i=1; i<=n; i++) {
cin>>a[i]>>b[i];
sum*=a[i];
}
for(int i=1; i<=n; i++) t[i]=sum/a[i];
for(int i=1; i<=n; i++)
for(ull j=t[i]; j<=0x7f7f7f7f7f7f; j+=t[i])
if(j%a[i]==1) {ans+=j*b[i]%sum;break;}
cout<<ans%sum;
return 0;
}