Bunicul lui Ionel este apicultor şi din acest motiv Ionel a vrut să combine pasiunea lui pentru numere cu meseria bunicului. El a aşezat numere sub forma unui şir de faguri, numerotaţi de la la . În cadrul unui fagure numerele au fost aşezate în sensul rotirii acelor de ceasornic. Pe latura comună a doi faguri el aşează numai două numere. Mihuţ, fratele lui Ionel, ca să facă o glumă a amestecat numerele din faguri astfel: a luat cel mai mare număr prim din al doilea fagure şi l-a schimbat cu cel mai mare număr prim din penultimul fagure (cu numărul de ordine ), apoi a luat cel mai mare număr prim din al treilea fagure şi l-a schimbat cu cel mai mare număr prim din antepenultimul fagure (cu numărul de ordine ), continuă aşa până la mijlocul şirului de faguri. Mihuţ nu s-a atins de numerele care făceau parte din latura comună a doi faguri alăturaţi. Dacă în cadrul unui fagure Mihuţ nu a găsit un număr prim ce poate fi mutat, atunci nu a realizat interschimbarea în cadrul perechii de faguri corespunzătoare.
Exemplu:
Ionel a plecat de la numere: şi le-a aşezat conform modelului din figura . Modelul din figura a rezultat după ce Mihuţ a amestecat numerele. Mihuţ nu are voie să amestece numerele: .
Cerinţă
Scrieţi un program care să citească informaţiile din fişierul de intrare fagure.in
şi care să determine:
- numărul fagurilor pe care a reuşit Ionel să îi construiască;
- cel mai mic număr de ordine al fagurelui pe care Ionel a plasat valoarea , înainte de amestecarea realizată de Mihuţ;
- pentru un număr natural , citit din fişier, care este noul număr plasat de Mihuţ pe fagurele cu numărul de ordine . Dacă Mihuţ nu s-a atins de numerele de pe fagurele se va scrie valoarea .
Date de intrare
Fişierul de intrare fagure.in
conţine trei linii:
- pe prima linie se află perechea de numere naturale şi separate printr-un spaţiu cu semnificaţiile din enunţ;
- a doua linie conţine cele numere naturale nenule mai mici decât , separate prin câte un spaţiu, cu care Ionel a construit fagurii;
- pe ultima linie din fişier se află numărul natural cu semnificaţia din enunţ. Valoarea se regăseşte în fişier şi pe linia a doua.
Date de ieşire
Fişierul de ieşire fagure.out
va conţine trei linii:
- pe prima linie se va scrie numărul natural ce reprezintă numărul fagurilor construiţi de Ionel;
- pe a doua linie se va scrie numărul de ordine minim al fagurelui pe care a fost plasată valoarea . În cazul în care valoarea se găseşte pe latura comună a doi faguri alăturaţi, se vor afişa numerele de ordine ale celor doi faguri în ordinea crescătoare a valorilor, separate printr-un spaţiu;
- pe a treia linie se va scrie numărul pe care Mihuţ l-a plasat pe fagurele după ce a amestecat numerele sau valoarea dacă nu s-a atins de fagurele .
Restricţii şi precizări
- Pentru toate testele, ultimul fagure construit de Ionel, este format din numere.
- Pentru rezolvarea cerinţei se acordă din punctaj, pentru rezolvarea cerinţei , din punctaj şi pentru rezolvarea cerinţei , din punctaj.
Exemplu
fagure.in
18 2
2 11 37 14 5 12 17 101 97 26 3 19 13 5 130 7 213 907
101
fagure.out
4
2 3
5
Explicaţie
reprezintă numărul fagurilor construiţi de Ionel
aparţine fagurilor şi
reprezintă valoarea plasată de Mihuţ pe fagurele .