結果
| 問題 |
No.5 数字のブロック
|
| ユーザー |
|
| 提出日時 | 2018-11-25 22:36:11 |
| 言語 | Java (openjdk 23) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 1,123 bytes |
| コンパイル時間 | 4,058 ms |
| コンパイル使用メモリ | 73,632 KB |
| 実行使用メモリ | 39,564 KB |
| 最終ジャッジ日時 | 2024-12-25 21:59:02 |
| 合計ジャッジ時間 | 7,884 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 13 WA * 21 |
ソースコード
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
public class Main05 {
public static void main(String[] args) {
InputStream is = System.in;
InputStreamReader r = new InputStreamReader(is);
BufferedReader br = new BufferedReader(r);
try {
final int hako = Integer.valueOf(br.readLine());
String blockCount = br.readLine();
String[] blockWidths = br.readLine().split(" ");
int size = 0;
int maxWidht = 0;
int count = 0;
for (String widthStr : blockWidths) {
int w = Integer.valueOf(widthStr);
// そのまま入る?
if (size + w <= hako) {
// 入る。
size += w;
count++;
maxWidht = (w < maxWidht) ? maxWidht : w;
} else {
// 入らない
// 入っている中の最大よりも小さい?
if (w <= maxWidht) {
// 小さい。ので入れ替えする。
size = size - maxWidht + w;
} else {
// 小さくない。
// なにもしない。
}
}
}
System.out.println(count);
} catch (Exception e) {
e.printStackTrace();
}
}
}