結果
問題 |
No.139 交差点
|
ユーザー |
![]() |
提出日時 | 2020-10-03 12:56:24 |
言語 | Java (openjdk 23) |
結果 |
AC
|
実行時間 | 155 ms / 5,000 ms |
コード長 | 784 bytes |
コンパイル時間 | 2,151 ms |
コンパイル使用メモリ | 77,280 KB |
実行使用メモリ | 54,404 KB |
最終ジャッジ日時 | 2024-07-18 04:19:03 |
合計ジャッジ時間 | 6,960 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 28 |
ソースコード
import java.io.PrintWriter; import java.util.Scanner; public class Main{ public static void main(String[] args) { Scanner scanner=new Scanner(System.in); PrintWriter out=new PrintWriter(System.out); int n=scanner.nextInt(); int l=scanner.nextInt(); int[] x=new int[n]; int[] w=new int[n]; int[] t=new int[n]; for(int i=0; i<n; i++) { x[i]=scanner.nextInt(); w[i]=scanner.nextInt(); t[i]=scanner.nextInt(); } int p=0; for(int i=0; i<n; i++) { if(i==0) p+=x[i]; else p+=x[i]-(x[i-1]+w[i-1]); if(p/t[i]%2==1) { p=(p/t[i]+1)*t[i]+w[i]; }else { int p0=p/t[i]*t[i]; if(t[i]-(p-p0)<w[i]) { p=p0+2*t[i]+w[i]; }else { p+=w[i]; } } } p+=l-(x[n-1]+w[n-1]); out.println(p); out.close(); scanner.close(); } }