👤

Fie S(m) un sistem de triaj cu o stiva de dimensiune m si doua operatii:
1. Se introduce in stiva un numar citit de la tastatura
2. Se afiseaza la consola un numar extras din stiva nevida, oricare dintre cele doua operatii putand fi aplicata ori de cate ori este posibil.
Prin citirea de la tastatura a numerelor 1, . . . , n, in aceasta ordine, cu n ≤ m si aplicarea operatiilor descrise mai sus, S(m) poate genera permutari cu n elemente, dar nu toate.
a) Dati exemplu de permutare cu 3 elemente care nu poate fi generata de S(m), (n = 3, m ≥ 3).
b) Fie p o permutare arbitrara cu n ≤ 100 elemente, data. Sa se scrie un program intr-unul dintre limbajele studiate in liceu (Pascal/C/C++) care sa decida daca p poate fi generata de S(m).
Nota: Se vor preciza detaliile algoritmului folosit si ale implementarii sub forma de program: variabile, structuri de date, structuri iterative, instructiuni conditionale.