結果
問題 |
No.628 Tagの勢い
|
ユーザー |
|
提出日時 | 2018-04-09 01:42:55 |
言語 | Kotlin (2.1.0) |
結果 |
AC
|
実行時間 | 433 ms / 2,000 ms |
コード長 | 1,249 bytes |
コンパイル時間 | 12,399 ms |
コンパイル使用メモリ | 441,880 KB |
実行使用メモリ | 54,032 KB |
最終ジャッジ日時 | 2024-11-20 15:47:07 |
合計ジャッジ時間 | 20,231 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 19 |
コンパイルメッセージ
Main.kt:6:10: warning: parameter 'args' is never used fun main(args: Array<String>) { ^
ソースコード
package net.ipipip0129.kotlin.yukicoder import java.io.BufferedReader import java.io.InputStreamReader fun main(args: Array<String>) { val br = BufferedReader(InputStreamReader(System.`in`)) val count = br.readLine().toInt() val tagsMap = HashMap<String, Int>() (0 until count).forEach { br.readLine() val data = br.readLine().split(" ") val tagsPoint = data[1].toInt() val tags = br.readLine().split(" ") tags.forEach { var tagPoint = 0 if (tagsMap.containsKey(it)) { tagPoint = tagsMap[it]!! } tagsMap[it] = tagPoint + tagsPoint } } tagsMap.toSortedMap(Comparator { o1, o2 -> val val1 = tagsMap[o1]!! val val2 = tagsMap[o2]!! when { val1 < val2 -> return@Comparator 1 val2 < val1 -> return@Comparator -1 else -> { when { o1 < o2 -> return@Comparator -1 o2 < o1 -> return@Comparator 1 else -> 0 } } } }).toList().take(10).forEach { println("${it.first} ${it.second}") } br.close() }