結果
問題 |
No.482 あなたの名は
|
ユーザー |
|
提出日時 | 2019-01-19 06:57:36 |
言語 | Nim (2.2.0) |
結果 |
AC
|
実行時間 | 9 ms / 2,000 ms |
コード長 | 581 bytes |
コンパイル時間 | 2,176 ms |
コンパイル使用メモリ | 61,284 KB |
実行使用メモリ | 5,376 KB |
最終ジャッジ日時 | 2024-07-01 10:19:38 |
合計ジャッジ時間 | 3,440 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 28 |
コンパイルメッセージ
/home/judge/data/code/Main.nim(1, 8) Warning: imported and not used: 'sequtils' [UnusedImport]
ソースコード
import sequtils proc getchar_unlocked():char {. importc:"getchar_unlocked",header: "<stdio.h>" .} proc scan[T](): T = while true: var k = getchar_unlocked() if k < '0' or k > '9': break else: result = 10 * result + k.ord.T - '0'.ord.T let n = scan[int32]() let k = scan[int]() var D :array[200_010,int32] for i in 0..<n:D[i] = scan[int32]() var swapTime = 0 block: var i = 0.int32 while i < n: if D[i]-1 == i : i += 1 else: swap(D[D[i]-1],D[i]) swapTime += 1 if swapTime > k : echo "NO" elif (k-swapTime) mod 2 == 0: echo "YES" else: echo "NO"