問題本身可以找到here。其要點是貝西騎着過山車,但她頭暈目眩。在不超過她的「暈眩極限」的情況下,她可以擁有的最大樂趣是多少。 輸入包括:確定最大樂趣的算法
「NKL
其中N(1≤N≤1,000)是部分的在該特定過山車的數量; K(1≤ķ≤500)的量如果Bessie在任何路段上閉着眼睛,頭暈會降低;而L(1≤L≤300,000)是Bessie可以忍受的頭暈的極限 - 如果她的頭暈比L大,貝西將會生病了,那並不好玩!
接下來N行中的每一行都會有兩個整數:
FD
其中F(1≤˚F≤20),殼牌得到,如果她讓她的眼睛上那款開放,d的增加Bessies總樂趣(1≤d≤500)增加如果她在該部分保持睜大眼睛的話,可以使她頭暈目眩。該部分將順序列出「
我的算法來解決這個看起來是這樣的:。。?
cin >> N; // sections
cin >> K; // amount dizziness can go down
cin >> L; // dizzy ceiling
belowL = L; // sets the amount of dizzy left
for (int i = 0; i < N; i++) {
cout << "\n" << i;
cin >> F >> D; // fun increase and dizzy increase
if (D < belowL) {
if (F >= D) {
funTotal += F;
}
}
else {
belowL -= K;
}
然而,這並不總是產生正確的結果有什麼問題應該挑有趣的選項,除非它會把貝西在病門檻,有沒有更好的方式來做到這一點?
我很好奇爲什麼有人投票結束這個,它措辭相當好,並有一個鏈接到原來的問題以及。 :p我沒有時間閱讀它,但如果我這樣做,它看起來像一個有趣的問題! – 2012-02-15 20:26:49
你應該尋找最大限度發揮樂趣的方法,但目前你只是想盡快獲得儘可能多的樂趣。 – 2012-02-15 20:28:50
讓我想起[RollerCoaster Tycoon](http://en.wikipedia.org/wiki/Roller_Coaster_Tycoon)。當客人離開過山車並摔倒在人行道上時,我喜歡它。 – 2012-02-15 20:30:21