Submission #38798328
Source Code Expand
import java.io.BufferedReader import java.io.PrintWriter inline fun <R> read(func: BufferedReader.() -> R): R { return System.`in`.bufferedReader().use(func) } inline fun <R> write(func: PrintWriter.() -> R): R { return PrintWriter(System.out).use(func) } @kotlin.ExperimentalStdlibApi fun main() = read{ write { val testCase = readLine()!!.toInt() repeat(testCase) { val (n, m) = readLine()!!.split(' ').map(String::toInt) val color = readLine()!!.split(' ').map(String::toInt).toIntArray() val edges = List(m) { val (u, v) = readLine()!!.split(' ').map(String::toInt) u - 1 to v - 1 } val graph = Array(n){ mutableListOf<Int>() } for ((u, v) in edges) { graph[u].add(v) graph[v].add(u) } val minStep = Array(n){IntArray(n){-1} }.also { it[0][n - 1] = 0 } val queue = ArrayDeque<Pair<Int, Int>>(listOf(0 to n - 1)) while (queue.isNotEmpty()) { val (takahashi, aoki) = queue.removeFirst() val step = minStep[takahashi][aoki] for (nextTakahashi in graph[takahashi]) { for (nextAoki in graph[aoki]) { if (color[nextTakahashi] == color[nextAoki]) continue if (minStep[nextTakahashi][nextAoki] != -1) continue minStep[nextTakahashi][nextAoki] = step + 1 queue.addLast(nextTakahashi to nextAoki) } } } println(minStep[n - 1][0]) } } }
Submission Info
Submission Time | |
---|---|
Task | E - Swap Places |
User | yudedako |
Language | Kotlin (1.3.71) |
Score | 500 |
Code Size | 1720 Byte |
Status | AC |
Exec Time | 709 ms |
Memory | 89264 KiB |
Compile Error
warning: ATTENTION! This build uses unsafe internal compiler arguments: -XXLanguage:+InlineClasses This mode is not recommended for production use, as no stability/compatibility guarantees are given on compiler or generated code. Use it at your own risk!
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 500 / 500 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | 00_sample_00.txt |
All | 00_sample_00.txt, 01_small_00.txt, 01_small_01.txt, 01_small_02.txt, 01_small_03.txt, 01_small_04.txt, 01_small_05.txt, 01_small_06.txt, 01_small_07.txt, 01_small_08.txt, 01_small_09.txt, 01_small_10.txt, 01_small_11.txt, 01_small_12.txt, 01_small_13.txt, 01_small_14.txt, 01_small_15.txt, 01_small_16.txt, 01_small_17.txt, 01_small_18.txt, 01_small_19.txt, 01_small_20.txt, 01_small_21.txt, 01_small_22.txt, 01_small_23.txt, 01_small_24.txt, 01_small_25.txt, 01_small_26.txt, 01_small_27.txt, 01_small_28.txt, 01_small_29.txt, 01_small_30.txt, 01_small_31.txt, 02_tree_00.txt, 02_tree_01.txt, 02_tree_02.txt, 02_tree_03.txt, 02_tree_04.txt, 02_tree_05.txt, 03_path_00.txt, 03_path_01.txt, 03_path_02.txt, 03_path_03.txt, 04_dense_00.txt, 04_dense_01.txt, 04_dense_02.txt, 04_dense_03.txt, 05_sparse_00.txt, 05_sparse_01.txt, 05_sparse_02.txt, 05_sparse_03.txt, 06_large_00.txt, 06_large_01.txt, 06_large_02.txt, 06_large_03.txt, 06_large_04.txt, 06_large_05.txt, 06_large_06.txt, 06_large_07.txt, 06_large_08.txt, 06_large_09.txt, 07_bridge_connected_00.txt, 07_bridge_connected_01.txt, 07_bridge_connected_02.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
00_sample_00.txt | AC | 140 ms | 39996 KiB |
01_small_00.txt | AC | 162 ms | 42068 KiB |
01_small_01.txt | AC | 122 ms | 40132 KiB |
01_small_02.txt | AC | 157 ms | 42084 KiB |
01_small_03.txt | AC | 134 ms | 41052 KiB |
01_small_04.txt | AC | 138 ms | 41084 KiB |
01_small_05.txt | AC | 143 ms | 41372 KiB |
01_small_06.txt | AC | 136 ms | 41056 KiB |
01_small_07.txt | AC | 142 ms | 41412 KiB |
01_small_08.txt | AC | 168 ms | 45180 KiB |
01_small_09.txt | AC | 157 ms | 41964 KiB |
01_small_10.txt | AC | 146 ms | 41436 KiB |
01_small_11.txt | AC | 170 ms | 45252 KiB |
01_small_12.txt | AC | 149 ms | 41916 KiB |
01_small_13.txt | AC | 166 ms | 45376 KiB |
01_small_14.txt | AC | 162 ms | 44812 KiB |
01_small_15.txt | AC | 152 ms | 44540 KiB |
01_small_16.txt | AC | 165 ms | 44588 KiB |
01_small_17.txt | AC | 165 ms | 45112 KiB |
01_small_18.txt | AC | 165 ms | 45580 KiB |
01_small_19.txt | AC | 162 ms | 45736 KiB |
01_small_20.txt | AC | 163 ms | 44712 KiB |
01_small_21.txt | AC | 166 ms | 44860 KiB |
01_small_22.txt | AC | 228 ms | 49512 KiB |
01_small_23.txt | AC | 201 ms | 50020 KiB |
01_small_24.txt | AC | 246 ms | 49200 KiB |
01_small_25.txt | AC | 263 ms | 51848 KiB |
01_small_26.txt | AC | 277 ms | 47480 KiB |
01_small_27.txt | AC | 203 ms | 50360 KiB |
01_small_28.txt | AC | 279 ms | 49660 KiB |
01_small_29.txt | AC | 362 ms | 53560 KiB |
01_small_30.txt | AC | 274 ms | 50232 KiB |
01_small_31.txt | AC | 240 ms | 49860 KiB |
02_tree_00.txt | AC | 709 ms | 89264 KiB |
02_tree_01.txt | AC | 198 ms | 70012 KiB |
02_tree_02.txt | AC | 203 ms | 70436 KiB |
02_tree_03.txt | AC | 272 ms | 71164 KiB |
02_tree_04.txt | AC | 204 ms | 70756 KiB |
02_tree_05.txt | AC | 295 ms | 76616 KiB |
03_path_00.txt | AC | 557 ms | 78376 KiB |
03_path_01.txt | AC | 208 ms | 70352 KiB |
03_path_02.txt | AC | 205 ms | 70092 KiB |
03_path_03.txt | AC | 221 ms | 70488 KiB |
04_dense_00.txt | AC | 519 ms | 65304 KiB |
04_dense_01.txt | AC | 526 ms | 66044 KiB |
04_dense_02.txt | AC | 498 ms | 65960 KiB |
04_dense_03.txt | AC | 502 ms | 66428 KiB |
05_sparse_00.txt | AC | 530 ms | 80384 KiB |
05_sparse_01.txt | AC | 210 ms | 69900 KiB |
05_sparse_02.txt | AC | 193 ms | 69668 KiB |
05_sparse_03.txt | AC | 199 ms | 70032 KiB |
06_large_00.txt | AC | 458 ms | 79184 KiB |
06_large_01.txt | AC | 446 ms | 78568 KiB |
06_large_02.txt | AC | 444 ms | 78392 KiB |
06_large_03.txt | AC | 526 ms | 78872 KiB |
06_large_04.txt | AC | 432 ms | 78592 KiB |
06_large_05.txt | AC | 458 ms | 79444 KiB |
06_large_06.txt | AC | 478 ms | 78884 KiB |
06_large_07.txt | AC | 454 ms | 78708 KiB |
06_large_08.txt | AC | 428 ms | 78928 KiB |
06_large_09.txt | AC | 433 ms | 78648 KiB |
07_bridge_connected_00.txt | AC | 319 ms | 69816 KiB |
07_bridge_connected_01.txt | AC | 338 ms | 69212 KiB |
07_bridge_connected_02.txt | AC | 177 ms | 54244 KiB |