Italag a fost toată viaţa pasionat de speculaţii bursiere reuşind să adune o avere considerabilă. Fiind un tip original şi pasionat de matematică a scris un testament inedit. Testamentul conţine două numere naturale: reprezentând averea ce trebuie împărţită moştenitorilor şi reprezentând alegerea sa pentru împărţirea averii. Italag decide să-şi împartă toată averea, iar sumele pe care le acordă moştenitorilor să fie în ordine strict descrescătoare.
De exemplu dacă averea ar fi unităţi monetare, ar putea fi împărţită astfel:
- (unităţi primului moştenitor) (unităţi celui de-al doilea), sau
- (unităţi primului moştenitor) (unitate celui de-al doilea), sau
- (doar primului moştenitor), sau
- (unităţi primului moştenitor) (unităţi celui de-al doilea), sau
- (unităţi primului moştenitor) (unităţi celui de-al doilea) (unitate celui de-al treilea).
Văzând că îi este foarte greu să verifice dacă nu cumva a omis vreo variantă de împărţire, Italag le-a scris în ordine lexicografică. Pentru exemplul de mai sus: ; ; ; ; .
A hotărât ca banii să fie distribuiţi conform celei de-a -a posibilităţi din ordinea lexicografică.
Cerinţă
Scrieţi un program care pentru numerele , date să calculeze şi să afişeze numărul total de posibilităţi de împărţire a averii, precum şi modul în care se face această împărţire conform cu a –a posibilitate din ordinea lexicografică.
Date de intrare
Fişierul de intrare avere.in
conţine o singură linie pe care se află două numere naturale separate printr-un singur spaţiu:
- primul număr () reprezintă suma totală
- cel de-al doilea () reprezintă numărul de ordine al poziţiei căutate
Date de ieșire
Fişierul de ieşire avere.out
va conţine două linii:
- pe prima linie va fi afişat numărul total de modalităţi de împărţire a averii;
- pe cea de-a doua linie va fi afişată a -a posibilitate de împărţire a lui conform cerinţei în ordine lexicografică. Elementele sale vor fi separate prin câte un spaţiu.
Restricții și precizări
- numărul total de posibilităţi cu suma
- Se acordă punctaj parţial pentru fiecare test: pentru determinarea corectă a numărului de posibilităţi de împărţire a lui şi pentru determinarea corectă a posibilităţii , din ordinea lexicografică.
- Posibilităţile de împărţire a averii sunt numerotate începând cu .
- Fie şi două şiruri. Spunem că precedă pe din punct de vedere lexicografic, dacă există , astfel încât , pentru orice de la la şi . Exemplu: precedă secvenţa deoarece (), iar precedă deoarece .
Exemplul 1
avere.in
7 2
avere.out
5
4 3
Exemplul 2
avere.in
12 5
avere.out
15
6 5 1
Exemplul 3
avere.in
700 912345678912345678
avere.out
962056220379782044
175 68 63 58 54 45 40 36 34 32 20 18 17 14 11 9 3 2 1