Pe o linie orizontală se găsesc n greieri. Ei încep să stea „capră” într-o ordine prestabilită începând cu ultimul, pe rând, până la primul. Toţi greierii care îl preced pe cel care stă „capră” sar peste acesta, în ordine.
De exemplu pentru n=4, mai întâi stă „capră” greierul 4 și peste el sar, în ordine, 3, 2 și 1. Apoi stă „capră” greierul 3 și sar peste el, în ordine, 2, 1 și 4. Apoi stă „capră” greierul 2 și peste el sar, în ordine, 1, 3 și 4. Apoi stă „capră” greierul 1 și sar peste el, în ordine, 4 , 3 și 2, și se revine la ordinea inițială.

Cerință
Scrieți un program care citește numerele naturale n și m și determină:
a) De câte sărituri este nevoie pentru a se ajunge la ordinea inițială?
b) Cum vor fi așezați greierii după m sărituri?
Date de intrare
Fișierul de intrare greieri.in conține două valori n și m, separate printr-un spațiu, cu semnificația din enunț.
Date de ieșire
Fișierul de ieșire greieri.out va conține:
- pe prima linie o valoare ce reprezintă numărul de sărituri după care se revine la ordinea inițială;
- pe a doua linie numerele ce reprezintă ordinea greierilor după
mpași.
Restricții și precizări
2 ≤ n ≤ 100000;1 ≤ m ≤ 2000000000;
Exemplu:
greieri.in
4 5
greieri.out
12 4 3 1 2
Explicație
După cum se vede și în imagine pornind de la linia inițială 1 2 3 4 la primul pas sare greierele 3 peste 4 , la pasul 2 sare greierele 2 peste 4 , la pasul trei sare greierele 1 peste 4 la pasul patru sare greierele 2 peste 3, iar la pasul cinci sare greierele 1 peste 3.