N, K = gets.split.map(&:to_i)
D = gets.split.map(&:to_i)
u = Array.new(N + 1, false)
m = 0
for i in (1..N)
  j = i
  l = 0
  unless u[j]
    until u[j] do
      u[j] = true
      j = D[j - 1]
      l += 1
    end
    m += l - 1
  end
end
ans = if m <= K and (K - m) % 2 == 0
        "YES"
      else
        "NO"
      end
puts ans