結果
| 問題 |
No.628 Tagの勢い
|
| コンテスト | |
| ユーザー |
toshiro_yanagi
|
| 提出日時 | 2018-06-16 10:56:53 |
| 言語 | Nim (2.2.0) |
| 結果 |
CE
(最新)
AC
(最初)
|
| 実行時間 | - |
| コード長 | 535 bytes |
| コンパイル時間 | 1,055 ms |
| コンパイル使用メモリ | 69,324 KB |
| 最終ジャッジ日時 | 2024-11-14 20:27:56 |
| 合計ジャッジ時間 | 1,503 ms |
|
ジャッジサーバーID (参考情報) |
judge1 / judge5 |
(要ログイン)
コンパイルエラー時のメッセージ・ソースコードは、提出者また管理者しか表示できないようにしております。(リジャッジ後のコンパイルエラーは公開されます)
ただし、clay言語の場合は開発者のデバッグのため、公開されます。
ただし、clay言語の場合は開発者のデバッグのため、公開されます。
コンパイルメッセージ
/home/judge/data/code/Main.nim(12, 16) Error: type mismatch Expression: dic[str] += S[1] [1] dic[str]: int [2] S[1]: int Expected one of (first mismatch at [position]): [1] proc `+=`[T: SomeInteger](x: var T; y: T) [1] proc `+=`[T: float | float32 | float64](x: var T; y: T)
ソースコード
import strutils, sequtils, algorithm, tables
proc getStr: auto = stdin.readLine
var dic = initCountTable[string]()
let N = getStr().parseInt
for i in 0 ..< N:
let
No, S = getStr().split.map parseInt
Tags = getStr().split
for str in Tags:
if str in dic:
dic[str] += S[1]
else:
dic[str] = S[1]
var
i = 0
dic2 = newSeq[tuple[n: string, t: int]](dic.len)
for k, v in dic:
dic2[i].n = k
dic2[i].t = v
i += 1
for i, d in sortedByIt(dic2, (-it.t, it.n)):
if i >= 10: break
echo d.n, " ", d.t
toshiro_yanagi