Fișierul intrare/ieșire fagure.in, fagure.out Sursă ONI 2011 clasa a 5-a
Autor Daniela Tarasă Adăugată de avatar Isabela_coman Coman Isabela Patricia Isabela_coman
Timp de execuție pe test 1 sec Limită de memorie 16384 KB
Scorul tău N/A Dificultate stea de rating de tip fullstea de rating de tip fullstea de rating de tip emptystea de rating de tip emptystea de rating de tip empty
open book Poți vedea testele pentru această problemă accesând atașamentele .

Fagure (clasa a 5-a)

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 n numere sub forma unui șir de nr faguri, numerotați de la 1 la nr. Î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 nr-1), 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 nr-2), 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 18 numere: 2 11 37 14 5 12 17 101 97 26 3 19 13 5 130 7 213 907 și le-a așezat conform modelului din figura 1. Modelul din figura 2 a rezultat după ce Mihuț a amestecat numerele. Mihuț nu are voie să amestece numerele: 11, 37, 101, 97, 19, 13.

Cerințe:

Scrieți un program care să citească informațiile din fișierul de intrare fagure.in și care să determine:

a) numărul fagurilor pe care a reușit Ionel să îi construiască;
b) cel mai mic număr de ordine al fagurelui pe care Ionel a plasat valoarea x, înainte de amestecarea realizată de Mihuț;
c) pentru un număr natural k, citit din fișier, care este noul număr plasat de Mihuț pe fagurele cu numărul de ordine k. Dacă Mihuț nu s-a atins de numerele de pe fagurele k se va scrie valoarea 0.

Date de intrare

Fișierul de intrare fagure.in conține trei linii:

  • pe prima linie se află perechea de numere naturale n și k separate printr-un spațiu cu semnificațiile din enunț;
  • a doua linie conține cele n numere naturale nenule mai mici decât 32000, separate prin câte un spațiu, cu care Ionel a construit fagurii;
  • pe ultima linie din fișier se află numărul natural x cu semnificația din enunț. Valoarea x 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:

a) pe prima linie se va scrie numărul natural nr ce reprezintă numărul fagurilor construiți de Ionel;
b) pe a doua linie se va scrie numărul de ordine minim al fagurelui pe care a fost plasată valoarea x. În cazul în care valoarea x 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;
c) pe a treia linie se va scrie numărul pe care Mihuț l-a plasat pe fagurele k după ce a amestecat numerele sau valoarea 0 dacă nu s-a atins de fagurele k.

Restricții

  • Pentru toate testele, ultimul fagure construit de Ionel, este format din 6 numere.
  • 10 ≤ n < 10000
  • 2 ≤ k ≤ numărul de ordine al fagurelui din mijloc
  • 1 ≤ x < 30000
  • Pentru rezolvarea cerinței a) se acordă 30% din punctaj, pentru rezolvarea cerinței b) 40% din punctaj și pentru rezolvarea cerinței c) 30% din punctaj.

Exemplu

fagure.in fagure.out Explicatii
18 2
2 11 37 14 5 12 17 101 97 26 3 19 13 5 130 7 213 907
101
4
2 3
5
4 reprezintă numărul fagurilor
construiți de Ionel
101 aparține fagurilor 2 și 3
5 reprezintă valoarea plasată de
Mihuț pe fagurele 2.

Trebuie să te autentifici pentru a trimite soluții. Click aici

Indicii de rezolvare

Arată 4 categorii