Таңғалмастыру
Егер \(n\) ұзындығындағы кез келген алмастыру \(a\) массивінің іштізбегі болса, онда \(a\) массивын \(n\) таңғалмастыруы деп атаймыз.
Сізге массив \(a\) және \(n\) саны берілген. Массив \(a\) \(n\)-таңғалмастыру болып табыла ма, соны анықтау қажет.
Алмастыру — бұл \(1\)-ден \(n\)-ге дейінгі бүтін сандардың \(n\) ұзындығындағы тізбегі, мұнда барлық сандар бір рет кездеседі. Мысалы, \([1]\), \([4, 3, 5, 1, 2]\), \([3, 2, 1]\) — алмастырулар, ал \([1, 1]\), \([4, 3, 1]\), \([2, 3, 4]\) — жоқ.
Алмастыру \(p\) массив \(a\)-ның іштізбегі болып табылады, егер \(p\) \(a\) массивінің бірнеше (мүмкін, нөл немесе барлығы) элементтерін жою арқылы алынатын болса.
Енгізу
Бірінші жолда екі бүтін сан \(m\) және \(n\) (\(1 \le m, n \le 400\)) — берілген массивтің ұзындығы және сан.
Екінші жолда \(m\) бүтін сан \(a_1, a_2, \ldots, a_m\) (\(1 \le a_i \le n\)) берілген.
Шығару
Егер массив \(a\) \(n\)-таңғалмастыруы болса, «YES» деп шығарыңыз. Әйтпесе, бірінші жолда «NO» (тырнақшасыз) деп шығарыңыз, екінші жолда массив \(a\)-ның іштізбегі болмайтын \(n\) ұзындығындағы алмастыруды шығарыңыз.
«YES» және «NO» сөздерін кез келген регистрде (мысалы, «yES», «yes» және «Yes» жауап ретінде қабылданады) шығара аласыз.
Мысалдар
Енгізу 1
3 2
1 2 1
Жауап 1
YES
Енгізу 2
9 4
1 4 2 3 1 3 2 4 2
Жауап 2
no
2 3 4 1
Пікірлер