提出 #44290302


ソースコード 拡げる

import java.util.HashMap;
import java.util.HashSet;
import java.util.Map;
import java.util.Scanner;
import java.util.Set;

public class Main {
	public static void main(String[] args) {
		try (Scanner scanner = new Scanner(System.in)) {
			int n = scanner.nextInt();
			int m = scanner.nextInt();
			Map<Integer, Set<Integer>> map = new HashMap<>();
			for (int i = 0; i < m; i++) {
				int a = scanner.nextInt();
				int b = scanner.nextInt();

				boolean add = false;
				for (Map.Entry<Integer, Set<Integer>> entry : map.entrySet()) {
					if (entry.getValue().contains(a)) {
						entry.getValue().add(b);
						check(map, b, entry.getValue());
						add = true;
					}
				}

				if (!add) {
					Set<Integer> set = map.get(a);
					if (set != null) {
						set.add(b);
						check(map, b, set);
					} else {
						set = new HashSet<>();
						set.add(b);
						map.put(a, set);
					}
				}
			}

			if (map.keySet().size() == 1) {
				int key = map.keySet().stream().findFirst().get();
				Set<Integer> values = map.get(key);
				if (values.size() == n - 1) {
					System.out.println(key);
					return;
				}
			}
			System.out.println(-1);
		}
	}

	private static void check(Map<Integer, Set<Integer>> map, int key, Set<Integer> set) {
		if (map.containsKey(key)) {
			Set<Integer> values = map.remove(key);
			set.addAll(values);
			values.forEach(value -> check(map, value, set));
		}
	}
}

提出情報

提出日時
問題 B - Who is Saikyo?
ユーザ kmatsu
言語 Java (OpenJDK 11.0.6)
得点 0
コード長 1457 Byte
結果 RE
実行時間 130 ms
メモリ 36012 KiB

ジャッジ結果

セット名 Sample All
得点 / 配点 0 / 0 0 / 300
結果
AC × 3
AC × 12
RE × 14
セット名 テストケース
Sample 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt
All 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt, 01_random_00.txt, 01_random_01.txt, 01_random_02.txt, 01_random_03.txt, 01_random_04.txt, 01_random_05.txt, 01_random_06.txt, 01_random_07.txt, 01_random_08.txt, 01_random_09.txt, 01_random_10.txt, 01_random_11.txt, 01_random_12.txt, 01_random_13.txt, 01_random_14.txt, 01_random_15.txt, 01_random_16.txt, 02_min_00.txt, 02_min_01.txt, 02_min_02.txt, 03_corner_00.txt, 03_corner_01.txt, 03_corner_02.txt
ケース名 結果 実行時間 メモリ
00_sample_00.txt AC 116 ms 35484 KiB
00_sample_01.txt AC 106 ms 35444 KiB
00_sample_02.txt AC 99 ms 35356 KiB
01_random_00.txt RE 112 ms 35972 KiB
01_random_01.txt AC 119 ms 35556 KiB
01_random_02.txt RE 115 ms 35712 KiB
01_random_03.txt RE 118 ms 35544 KiB
01_random_04.txt RE 122 ms 35944 KiB
01_random_05.txt RE 111 ms 35704 KiB
01_random_06.txt RE 130 ms 35960 KiB
01_random_07.txt RE 115 ms 35604 KiB
01_random_08.txt AC 118 ms 35580 KiB
01_random_09.txt AC 106 ms 35604 KiB
01_random_10.txt RE 107 ms 35592 KiB
01_random_11.txt RE 118 ms 35688 KiB
01_random_12.txt RE 125 ms 36012 KiB
01_random_13.txt RE 119 ms 35936 KiB
01_random_14.txt RE 117 ms 35852 KiB
01_random_15.txt AC 111 ms 35424 KiB
01_random_16.txt RE 114 ms 35680 KiB
02_min_00.txt AC 114 ms 35412 KiB
02_min_01.txt AC 106 ms 35708 KiB
02_min_02.txt AC 100 ms 35436 KiB
03_corner_00.txt AC 99 ms 35392 KiB
03_corner_01.txt AC 110 ms 35504 KiB
03_corner_02.txt RE 109 ms 35556 KiB