結果

問題 No.139 交差点
ユーザー Onju
提出日時 2015-01-30 00:15:25
言語 C++11
(gcc 4.8.5)
結果
AC  
実行時間 3 ms
コード長 590 Byte
コンパイル時間 232 ms
使用メモリ 1,488 KB
最終ジャッジ日時 2018-09-11 11:09:02

テストケース

テストケース表示
入力 結果 実行時間
使用メモリ
sample1.txt AC 3 ms
1,484 KB
sample2.txt AC 2 ms
1,484 KB
sample3.txt AC 2 ms
1,484 KB
testcase01.txt AC 2 ms
1,484 KB
testcase02.txt AC 2 ms
1,488 KB
testcase03.txt AC 2 ms
1,488 KB
testcase04.txt AC 2 ms
1,488 KB
testcase05.txt AC 2 ms
1,484 KB
testcase06.txt AC 2 ms
1,488 KB
testcase07.txt AC 3 ms
1,488 KB
testcase08.txt AC 3 ms
1,484 KB
testcase09.txt AC 2 ms
1,488 KB
testcase10.txt AC 2 ms
1,484 KB
testcase11.txt AC 2 ms
1,484 KB
testcase12.txt AC 2 ms
1,484 KB
testcase13.txt AC 2 ms
1,484 KB
testcase14.txt AC 2 ms
1,484 KB
testcase15.txt AC 2 ms
1,488 KB
testcase16.txt AC 3 ms
1,488 KB
testcase17.txt AC 2 ms
1,488 KB
testcase18.txt AC 2 ms
1,484 KB
testcase19.txt AC 2 ms
1,484 KB
testcase20.txt AC 2 ms
1,488 KB
testcase21.txt AC 2 ms
1,484 KB
testcase22.txt AC 3 ms
1,488 KB
testcase23.txt AC 2 ms
1,488 KB
testcase24.txt AC 2 ms
1,484 KB
testcase25.txt AC 2 ms
1,488 KB
testcase26.txt AC 3 ms
1,488 KB
testcase27.txt AC 2 ms
1,488 KB
testcase28.txt AC 2 ms
1,484 KB
テストケース一括ダウンロード

ソースコード

diff #
#include <iostream>
#define NMAX 100
using namespace std;

int main()
{
	int N, L, A = 0, P = 0;;
	cin >> N >> L;

	int X, W, T;
	for (int i = 0; i < N; ++i)
	{
		cin >> X >> W >> T;

		//交差点前まで進む
		A += X - P;
		P = X + W;

		//交差点判定
		int Tt = A / T;
		if (Tt & 1)
			//既に赤信号なので待つ
			A = T * (Tt + 1) + W;
		else
			//青のうちに渡れるか
			if (T * (Tt + 1) >= A + W)
				//渡れる
				A += W;
			else
				//渡れない 一生渡れない場合?知らんがな
				A = T * (Tt + 2) + W;
	}
	A += L - P;

	cout << A;

	return 0;
}
0