不用中國剩餘定理的知識,直接簡單模擬
#include using namespace std;
const int pc = 23, ep = 28, ip = 33;
int p, e, i, d;
bool judge(int ans)
int main()
++ans;
} }
return 0;
}
上面的簡單模擬,差一點就超時了,估計在uva上面會超時的,利用中國剩餘定理,o(1)解決戰鬥!
#include #include using namespace std;
const int pc = 23, ec = 28, ic = 33;
const int pei = pc*ec*ic;
int n1 = ec*ic, n2 = pc*ic, n3 = pc*ec;
void init()
int main()
}
POJ1006演算法解析
poj1006 生理週期 time limit 1000ms memory limit 10000k total submissions 137970 accepted 44170 description 人生來就有三個生理週期,分別為體力 感情和智力週期,它們的週期長度為23天 28天和33天。每...
POJ 1006 與中國剩餘定理
要點 設num為下乙個triple peak出現的時間。則可以得到以下三個等式 num 23 p num 28 e num 33 i 使用暴力列舉法會遇到問題 如當p 23時無法用 得到p,但這裡學到了一種新演算法 中國剩餘定理演算法,可繞過這個問題。中國剩餘定理介紹 孫子算經 中有 物不知數 問題...
列舉 案例(生理週期poj1006)
人生來就有三個生理週期,分別為體力 感情和智力週期,它們的週期長度為23天 28天和33天。每乙個週期中有一天是高峰。在高峰這天,人會在相應的方面表現出色。例如,智力週期的高峰,人會思維敏捷,精力容易高度集中。因為三個週期的周長不同,所以通常三個週期的高峰不會落在同一天。對於每個人,我們想知道何時三...