Il y a $2n$ cartes numérotées de $1$ à $2n$, empilées dans l'ordre $1, 2, 3, \ldots, 2n$ en partant du haut.
Ces cartes sont réarrangées en utilisant plusieurs fois les méthodes suivantes :
Coupe avec l'entier $k$
On sépare le paquet en un tas A formé des $k$ premières cartes du haut et un tas B formé des $2n-k$ cartes restantes, puis on place le tas B sur le tas A.
Mélange américain (Riffle shuffle)
On sépare le paquet en un tas A formé des $n$ premières cartes du haut et un tas B formé des $n$ cartes restantes, puis on les réunit en $1$ seul tas de sorte à avoir, en partant du haut : la $1$-re carte de A, la $1$-re carte de B, la $2$-e carte de A, la $2$-e carte de B, $\ldots$, la $n$-ième carte de A, la $n$-ième carte de B.
Écrivez un programme qui réarrange les cartes selon les instructions de l'entrée et affiche les numéros des cartes après réarrangement, dans l'ordre en partant du haut.
Entrée
- La ligne $1$ contient $n$ ($1 \le n \le 100$). Autrement dit, le nombre de cartes est $2n$.
- La ligne $2$ contient le nombre d'opérations $m$ ($1 \le m \le 1000$).
- Les $m$ lignes allant de la ligne $3$ à la ligne $m + 2$ contiennent chacune $1$ entier $k$ compris entre $0$ et $2n-1$, indiquant dans l'ordre la méthode de réarrangement des cartes :
- Si $k = 0$, on effectue un mélange américain.
- Si $1 \le k \le 2n-1$, on effectue une coupe avec $k$.
Sortie
La sortie doit comporter $2n$ lignes. Sur la ligne $1$, affichez le numéro de la carte tout en haut après le réarrangement ; sur la ligne $2$, le numéro de la $2$-e carte en partant du haut après le réarrangement ; et ainsi de suite, en affichant sur la ligne $i$ le numéro de la $i$-ième carte en partant du haut.
Exemples
Entrée 1
2 2 1 0
Sortie 1
2 4 3 1
Entrée 2
3 4 2 4 0 0
Sortie 2
1 5 4 3 2 6