1. 程式人生 > >演算法分析:生理週期問題

演算法分析:生理週期問題

上機程式碼:

#include<iostream>
#include<cstdio>
using namespace std;
#define N 21252
int main(){
    int p,e,i,d,caseNo = 0;
    while(cin>>p>>e>>i>>d && p!=-1){
        ++caseNo;
        int k;
        for(k = d+1;(k-p)%23;++k); //先找k的最小公倍數
        for(;(k-e)%28;k+=23);
        for(;(k-i)%33;k+=23*28);
        cout<<"Case"<<caseNo<<
            ":the next triple peak occurs in "<<k-d<<"  days"<<endl;
    }
}