let read() = stdin.ReadLine().Split() |> Array.map int64 let N,K = let t = read() in t.[0],t.[1] let D = read() D |> Array.zip [|1L..N|] |> Array.filter (fun tup -> fst tup <> snd tup) |> Array.length |> fun x -> max (x-1) 0 |> int64 |> function | x when x<=K && (K-x)%2L=0L -> "YES" | _ -> "NO" |> printfn "%s"