測試資料這道題最開始的時候一直是30分,問題在:在處理三種情況時,沒有將迴圈一圈後,又回到相同的燈的情況算上。30 3 30
80 10
1 50 11
2 20 6
0 33 10
0 3
初始狀態為綠燈,到時候有可能是g,y,r。如果為g的情況,有可能是迴圈了一圈又回到g的情況;也有可能是沒有迴圈,燈還沒來得及變的情況。
同理,紅燈和黃燈也是相同。
所以,實際上每個燈下需要處理的為4種情況。
**:
#include
using
namespace std;
intmain()
else
else
}break
;case2:
//yellow
cur = sum%circle;
cur -
=(time+r);if
(cur <=0)
else
else
}break
;case3:
//green
cur = sum%circle;
cur -
= time;
if(cur <0)
else
else
}break
;default
: sum+=0
;}//cout<<"sum "<}
// printf("%lld\n",sum);
cout
}
嗯,雖然100分了,但是其實思考起來很麻煩。
這個博主的思路棒棒的
小明放學201812 2
問題描述 試題編號 201812 2 試題名稱 小明放學 時間限制 1.0s 記憶體限制 512.0mb 問題描述 題目背景 漢東省政法大學附屬中學所在的光明區最近實施了名為 智慧型光明 的智慧型城市專案。具體到交通領域,通過 智慧型光明 終端,可以看到光明區所有紅綠燈此時此刻的狀態。小明的學校也安...
小明放學 201812 2
要點 每次計算時候,用當前已有時間time對 r g y 取餘,將紅綠燈時間變化範圍縮短在r g y範圍內。time r g y 等價為 紅綠燈相對於出發時刻狀態已變化的時間。把 r g y三種燈的狀態變化想象成乙個圈,迴圈變化 includeusing namespace std int main...
201812 2 小明放學
題目傳送門 問題描述 試題編號 201812 2 試題名稱 小明放學 時間限制 1.0s 記憶體限制 512.0mb 問題描述 題目背景 漢東省政法大學附屬中學所在的光明區最近實施了名為 智慧型光明 的智慧型城市專案。具體到交通領域,通過 智慧型光明 終端,可以看到光明區所有紅綠燈此時此刻的狀態。小...