結果

問題 No.482 あなたの名は
ユーザー tatt61880
提出日時 2020-04-17 00:26:38
言語 Kuin
(KuinC++ v.2021.9.17)
結果
AC  
実行時間 126 ms / 2,000 ms
コード長 524 bytes
コンパイル時間 2,212 ms
コンパイル使用メモリ 149,012 KB
実行使用メモリ 34,348 KB
最終ジャッジ日時 2024-09-16 10:32:51
合計ジャッジ時間 5,568 ms
ジャッジサーバーID
(参考情報)
judge5 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 28
権限があれば一括ダウンロードができます

ソースコード

diff #

func main()
	var ss: [][]char :: cui@input().split(" ")
	var n: int :: ss[0].toInt(&)
	var k: int :: ss[1].toInt(&)
	
	do ss :: cui@input().split(" ")
	var a: []int :: #[n]int
	for i(0, n - 1)
		do a[i] :: ss[i].toInt(&) - 1
	end for
	
	var cnt: int :: 0
	for i(0, n - 1)
		if(a[i] <> i)
			var p: int :: a[i]
			while(p <> i)
				do cnt :+ 1
				var tmp: int :: a[p]
				do a[p] :: p
				do p :: tmp
			end while
		end if
	end for
	var ans: bool :: cnt <= k & cnt % 2 = k % 2
	do cui@print(ans ?("YES\n", "NO\n"))
end func
0