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