Triunghi

Time limit: 0.03s Memory limit: 8MB Input: triunghi.in Output: triunghi.out

Gigel este un pasionat al triunghiurilor. El colectează beţişoare de diferite lungimi şi le asamblează în diferite triunghiuri. Ieri, el avea 66 beţişoare de lungimi 55, 22, 77, 33, 1212 şi 33. Din aceste bețișoare, Gigel a construit un triunghi de laturi 33, 33 şi 55, iar beţişoarele de lungimi 22, 77, 1212 au rămas nefolosite pentru că aceste lungimi nu pot forma laturile unui triunghi.

Din acest motiv, Gigel s-a hotărât să facă o colecţie de beţişoare, dintre care oricum ar alege 33 elemente, acestea să nu poată forma laturile unui triunghi, proprietate pe care o vom numi în continuare proprietate anti-triunghi. Gigel, pornind de la setul iniţial de lungimi 2,7,122, 7, 12, s-a gândit la două metode de realizare a unei colecţii de 55 beţişoare cu proprietatea anti-triunghi, şi anume:

  1. Păstrează cel mai scurt beţişor, cel de lungime 22, şi creează un set nou adăugând alte beţişoare de lungime mai mare sau egală cu cel iniţial. De exemplu, următoarele 55 lungimi sunt corecte: 2,2,12,50,302, 2, 12, 50, 30.
  2. Păstreză toate beţişoarele, şi anume 2,7,122, 7, 12, pe care le va completa cu alte beţişoare de diferite lungimi (mai scurte sau mai lungi), astfel ca proprietatea anti-triunghi să se păstreze. Următoarele 55 lungimi respectă proprietatea anti-triunghi: 2,7,12,4,12, 7, 12, 4, 1.

Cerinţă

Cunoscând un şir de nn numere naturale nenule a1,a2,...,ana_1, a_2, ..., a_n având proprietatea anti-triunghi, şi un număr kk (k>nk>n), se cere să construiţi un şir de kk numere naturale având proprietatea anti-triunghi, în conformitate cu una dintre următoarele două restricţii

  1. Varianta 1: Cel mai mic element este identic cu cel mai mic element din şirul iniţial.
  2. Varianta 2: Printre cele kk elemente ale şirului construit se regăsesc toate elementele şirului iniţial.

Date de intrare

Fişierul de intrare triunghi.in conţine pe prima linie valorile numerelor v,nv, n şi kk, separate prin spaţiu. Linia următoare conţine nn numere naturale separate prin spaţiu, ce formează un şir cu propietatea anti-triunghi.

Date de ieșire

Fişierul de ieşire triunghi.out va conţine kk numere pe o singură linie.

Dacă valoarea lui vv este 11, atunci fişierul va conţine kk numere naturale cu proprietatea anti-triunghi, separate prin spaţiu, în care cel mai mic element este identic cu minimul şirului dat în fişierul de intrare.

Dacă valoarea lui vv este 22, atunci fişierul va conţine kk numere naturale cu proprietatea anti-triunghi, separate prin spaţiu, printre care se regăsesc toate elementele şirului iniţial.

Restricții și precizări

  • 3n<k463 \leq n < k \leq 46
  • 11 \leq lungimea unui beţişor 2 000 000 000\leq 2 \ 000 \ 000 \ 000
  • Pentru rezolvarea corectă a primei cerinţe se acordă 3030 de puncte, iar pentru cerinţa a doua se acordă 7070 de puncte.
  • Se garantează că întotdeauna există soluţie.
  • Soluţia nu este unică - se admite orice răspuns corect.

Exemplul 1

triunghi.in

1 3 5
7 2 12

triunghi.out

2 2 30 50 12

Explicație

v=1v=1, n=3n=3, k=5k=5.
În varianata 11 avem de tipărit 55 numere, valoarea minimului este 22 în ambele şiruri.

Exemplul 2

triunghi.in

2 3 5
7 2 12

triunghi.out

1 4 12 7 2

Explicație

v=2v=2, n=3n=3, k=5k=5.
În varianata 22 printre elementele şirului tipărit se regăsesc toate elementele şirului iniţial.

Log in or sign up to be able to send submissions!