結果
問題 |
No.45 回転寿司
|
ユーザー |
![]() |
提出日時 | 2016-05-26 05:27:33 |
言語 | Java (openjdk 23) |
結果 |
TLE
|
実行時間 | - |
コード長 | 1,111 bytes |
コンパイル時間 | 3,070 ms |
コンパイル使用メモリ | 78,128 KB |
実行使用メモリ | 111,864 KB |
最終ジャッジ日時 | 2024-11-24 16:48:37 |
合計ジャッジ時間 | 174,838 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 3 TLE * 27 |
ソースコード
import java.util.*; public class Exercises19{ public static void main (String[] args){ Scanner sc = new Scanner(System.in); int numberOfSushi = sc.nextInt(); int[] sushiArray = new int[numberOfSushi]; ArrayDeque<Sushi> stack = new ArrayDeque<Sushi>(); int sum = 0; for (int n = 0; n < numberOfSushi; n++){ sushiArray[n] = sc.nextInt(); stack.add(new Sushi(sushiArray[n], n)); } while (stack.size() > 0){ Sushi sushi = stack.pop(); if(sushi.indexOfSushi + 1 >= numberOfSushi - 1){ if (sum < sushi.sumOfTaste) { sum = sushi.sumOfTaste; } }else{ int maxTaste = 0; for (int n = (sushi.indexOfSushi + 2); n < numberOfSushi; n++){ if (maxTaste < sushiArray[n]){ maxTaste = sushiArray[n]; stack.push(new Sushi(sushi.sumOfTaste + sushiArray[n], n)); } } } } System.out.println(sum); } } class Sushi { public int sumOfTaste; public int indexOfSushi; Sushi(int sum, int index){ sumOfTaste = sum; indexOfSushi = index; } }