結果

問題 No.628 Tagの勢い
ユーザー 👑 yumechiyumechi
提出日時 2021-03-04 02:27:04
言語 Scala(Beta)
(3.4.0)
結果
AC  
実行時間 1,380 ms / 2,000 ms
コード長 771 bytes
コンパイル時間 9,723 ms
コンパイル使用メモリ 273,440 KB
実行使用メモリ 73,628 KB
最終ジャッジ日時 2024-04-14 21:47:34
合計ジャッジ時間 32,672 ms
ジャッジサーバーID
(参考情報)
judge5 / judge1
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 1,011 ms
67,020 KB
testcase_01 AC 1,020 ms
67,156 KB
testcase_02 AC 1,009 ms
66,700 KB
testcase_03 AC 1,030 ms
66,916 KB
testcase_04 AC 992 ms
66,408 KB
testcase_05 AC 1,001 ms
66,656 KB
testcase_06 AC 1,016 ms
66,936 KB
testcase_07 AC 1,025 ms
66,984 KB
testcase_08 AC 1,034 ms
67,120 KB
testcase_09 AC 1,041 ms
66,972 KB
testcase_10 AC 1,070 ms
67,348 KB
testcase_11 AC 1,042 ms
66,996 KB
testcase_12 AC 1,380 ms
73,628 KB
testcase_13 AC 1,378 ms
73,088 KB
testcase_14 AC 1,380 ms
71,860 KB
testcase_15 AC 1,366 ms
73,460 KB
testcase_16 AC 1,232 ms
67,428 KB
testcase_17 AC 1,014 ms
66,936 KB
testcase_18 AC 1,022 ms
67,108 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

import java.util.Scanner

object Main extends App {
  val sc = new Scanner(System.in)

  val n = sc.nextInt
  var mp = Map.empty[String, Int]
  for(_ <- 0 until n) {
    val _ = sc.nextInt
    val m = sc.nextInt
    val s = sc.nextInt
    for(t <- Array.fill(m)(sc.next)) {
      val cs = mp.getOrElse(t, 0)
      mp += t -> (cs + s)
    }
  }
  val ta = mp.map(elem => Array(elem._1, elem._2)).toSeq
  val arr = ta.sortWith((t1, t2) => {
    if(t1(1).toString.toInt > t2(1).toString.toInt) {
      true
    } else if(t1(1).toString.toInt == t2(1).toString.toInt
              && t2(0).toString >= t1(0).toString) {
      true
    } else {
      false
    }
  })
  val limit = math.min(10, arr.length)
  for(i <- 0 until limit) {
    println(arr(i).mkString(" "))
  }
}

0