#LC001. #A.红绿灯

#A.红绿灯

題目描述

C城有一條東西方向的筆直的主幹道,該道路可看成一條以東為正方向的一維坐標軸,道路的最西端座標為(0,0)(0,0).

道路上有nn個紅綠燈,第ii個紅綠燈的座標為xix_i,紅燈時長為rir_i,綠燈時長為gig_i。 每個紅綠燈以“紅燈rir_i秒,綠燈gig_i秒”的規律工作。例如,ri=5r_i=5gi=3g_i=3,則第ii個紅綠燈在00秒~55秒時為紅燈,在55秒時切換為綠燈,在55秒~88秒時為綠燈,在88秒時切換為紅燈,在88秒~ 1313秒時為綠燈,等等。

某人準備00時整從道路最西端(座標為00的位置)駕車向東出發,他的車有一個速度上限uu,在出發前他可以將車速vv固定為11uu中的任意一個整數(含11uu),這樣00時整出發後車將一直保持v×m/sv\times m/s的速度(不計車的啟動時間,即對任意實數t0t\ge 0,出發tt秒時車的座標為vtvt),不能刹車或加速。

如果車遇到一個紅綠燈時其正處於紅燈,就會受到處罰,而如果處於綠燈,或者紅燈與綠燈切換的時刻,就不會被罰。 已知00時整(出發的時刻)所有紅綠燈均剛從綠燈切換為紅燈,請你計算出所有可行的車速vv,使得車能安全地通過所有紅綠燈。

輸入格式

第一行包含兩個用空格隔開的正整數nvn,v,分別表示紅綠燈的數量和車的速度上限。

接下來nn行,每行包含三個用空格隔開的正整數xirigix_i,r_i,g_i,分別表示第ii個紅綠燈的座標、紅燈時間以及綠燈時間。 保證任意兩個紅綠燈的座標不相同。

輸出格式

輸出一行,按從小到大的順序輸出所有可行的車速vv,每兩個數之間用一個空格隔開。 數據保證至少有一個可行的車速。

樣例

2 10
9 2 1
7 2 5
1 3

樣例說明

v=2v=2則遇到座標為99的紅燈,若v4v\ge 4,則遇到座標為77的紅燈; 故vv只能是1,31,3

數據規模與約定

對於50%50\%的數據,$1\le n\le 2,1\le u\le 10,1\le x_i\le 10,1\le r_i\le 10,1\le g_i\le 1e9$;

對於100%100\%的數據,$1\le n\le 10000,1\le u\le 100,1\le x_i\le 1e9,1\le r_i\le 1e9,1\le g_i\le 1e9$.