結果
| 問題 |
No.977 アリス仕掛けの摩天楼
|
| ユーザー |
CuriousFairy315
|
| 提出日時 | 2020-01-31 22:06:48 |
| 言語 | Java (openjdk 23) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 1,418 bytes |
| コンパイル時間 | 3,029 ms |
| コンパイル使用メモリ | 79,296 KB |
| 実行使用メモリ | 73,040 KB |
| 最終ジャッジ日時 | 2024-09-17 08:23:43 |
| 合計ジャッジ時間 | 15,009 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 24 WA * 2 |
ソースコード
import java.util.Scanner;
import java.util.ArrayList;
import java.util.ArrayDeque;
public class Main {
public static void main(String[] args) {
new Main();
}
public Main() {
try (Scanner sc = new Scanner(System.in)) {
int N = sc.nextInt();
ArrayList<ArrayList<Integer>> graph = new ArrayList<>();
for (int i = 0;i < N;++ i) graph.add(new ArrayList<>());
int check = 0;
for (int i = 1;i < N;++ i) {
int u = sc.nextInt(), v = sc.nextInt();
check = u;
graph.get(u).add(v);
graph.get(v).add(u);
}
ArrayDeque<Integer> bfs = new ArrayDeque<>();
boolean[] reach = new boolean[N];
bfs.addLast(check);
reach[check] = true;
int count = 1;
while(!bfs.isEmpty()) {
int tmp = bfs.removeFirst();
for (int i : graph.get(tmp)) {
if (!reach[i]) {
reach[i] = true;
bfs.addLast(i);
++ count;
}
}
}
boolean cycleCheck = true;
for (ArrayList<?> i : graph) cycleCheck &= i.size() == 2;
if (cycleCheck) ++ count;
System.out.println(count < N ? "Alice" : "Bob");
}
}
}
CuriousFairy315