#include #include #define repeat(i,n) for (int i = 0; (i) < int(n); ++(i)) using ll = long long; using namespace std; int main() { int n; ll k; scanf("%d%lld", &n, &k); vector d(n); repeat (i,n) { scanf("%d", &d[i]); -- d[i]; } vector e(n); repeat (i,n) e[d[i]] = i; repeat (i,n) { if (d[i] != i) { int j = e[i]; swap(d[i], d[j]); e[d[i]] = i; e[d[j]] = j; k -= 1; } } bool result = k >= 0 and k % 2 == 0; printf("%s\n", result ? "YES" : "NO"); return 0; }