fzu-1402

来源:互联网 发布:kindle保护套知乎 编辑:程序博客网 时间:2024/05/16 04:49

先求出最小满足第一行的,如例题中3+1=4,再验证是否符合第二行。4%5!=1,所以再把4递加3,直到(4+3*x)%5==1。继续验证下一行,不过递加要变为3和5的最小公倍数,一直循环到n,最后的总的最小公倍数即是答案。

#include<iostream>#include<fstream>using namespace std;long long gcd(long long a,long long b){    return b==0?a:gcd(b,a%b);}int main(){    //fstream cin("d:\\test.txt");int n,c,d;long long  a,b;while(cin>>n){cin>>a>>b;while(--n){cin>>c>>d;while(b%c!=d)b+=a;a=a/gcd(a,c)*c;}cout<<b<<endl;}return 0;}


原创粉丝点击