ConcursC++17

medalion

Figura 1 din enunțul original al problemei medalion.Figura 1 din enunțul original al problemei medalion.Mărește schema ↗
Rapunzel, frumoasa prinţesă cu păr blond, lung şi magic, se pregăteşte pentru nunta sa cu legendarul Flynn Rider. Cu ocazia acestui eveniment, el îi va dărui prinţesei un medalion unic pe care aceasta îl va purta în ziua nunţii.
Figura 2 din enunțul original al problemei medalion.Figura 2 din enunțul original al problemei medalion.Mărește schema ↗
Comanda pentru confecţionarea medalionului este preluată de un renumit bijutier al regatului care primeşte de la Flynn kk cutii (numerotate de la 11 la kk), fiecare cutie conţinând foarte multe cristale, identice ca valoare. Astfel, toate cristalele din prima cutie au valoarea 11, toate cristalele din cea de-a doua cutie au valoarea 22 şi aşa mai departe, astfel încât toate cristalele din ultima cutie au valoarea kk. Bijutierul va monta cristalele pe o plachetă de aur de formă pătratică cu nn rânduri de cristale, pe fiecare rând fiind montate nn cristale unul lângă altul. Acesta ia pe rând câte un cristal din fiecare cutie, în ordinea: 11, 22, 33, …\dots, kk, 11, 22, 33, …\dots, kk, 11, 22, 33, …\dots şi le aşează pe placheta de aur în formă de spirală. Spirala porneşte din centrul medalionului unde se montează primul cristal. Al doilea cristal se montează în dreapta primului, iar următorul cristal, mai jos, pe rândul imediat următor. Montarea cristalelor se continuă pe acelaşi rând, mergând spre stânga, apoi în sus până la rândul situat deasupra rândului pe care se montează primul cristal. Se procedează în continuare la fel, respectând regula de construire a spiralei: dreapta, jos, stânga, sus şi aşa mai departe.
Figura 3 din enunțul original al problemei medalion.Figura 3 din enunțul original al problemei medalion.Mărește schema ↗
De exemplu, pentru k=5k = 5, cristalele se montează pe medalion ca în desenul alăturat.

Cerinţă

  1. Ştiind că bijutierul completează nn (nn număr natural impar) rânduri cu cristale pe placheta de aur, determinaţi cea mai mare sumă a valorilor tuturor cristalelor situate pe un rând al medalionului.
  2. Determinaţi valoarea cristalului montat cu exact pp rânduri deasupra primului cristal montat în medalion şi plasat pe aceeaşi coloană cu acesta.

Date de intrare

Fişierul de intrare medalion.in conţine pe prima linie numerele naturale kk, nn, pp (în această ordine), cu semnificaţiile menţionate anterior. Valorile kk, nn, pp sunt separate prin câte un spaţiu.

Date de ieşire

Fişierul de ieşire medalion.out conţine pe prima linie un număr natural, ce reprezintă numărul determinat conform cerinţei a)a), iar pe cea de-a doua linie un număr natural, determinat conform cerinţei b)b).

Restricţii şi precizări

  • 2≤k≤202 \leq k \leq 20
  • 3≤n≤3013 \leq n \leq 301
  • 1≤p≤500 0001 \leq p \leq 500 \ 000
  • numărul de cristale din fiecare cutie este suficient de mare pentru construirea medalionului;
  • pentru rezolvarea corectă a cerinţei 11 se acordă 40%40\% din punctajul fiecărui test, iar pentru rezolvarea corectă a cerinţei 22 se acordă 60%60\% din punctajul fiecărui test

Exemplu

medalion.in

5 3 4

medalion.out

12
2

Explicaţie

Figura 4 din enunțul original al problemei medalion.Figura 4 din enunțul original al problemei medalion.Mărește schema ↗
1.1. După montarea a 33 rânduri de cristale se obţine configuraţia: Sumele valorilor cristalelor de pe aceste rânduri sunt:
2+3+4=92 + 3 + 4 = 9
1+1+2=41 + 1 + 2 = 4
5+4+3=125 + 4 + 3 = 12
Suma cea mai mare este 1212.
2.2. Cristalul situat cu 44 rânduri deasupra centrului medalionului, marcat în desenul alăturat, are valoarea 22.

Sursă și autori

ONI 2012, clasele 6. Cristina Iordaiche.

Enunț din Kilonova, sub licența CC-BY-NC-SA-4.0, conform politicii sursei. Adaptări de prezentare și tipografie. Exemplele, formulele și figurile originale sunt păstrate.

RÂNDUL TĂU

Trimite o soluție

Editor de cod

Setul original de teste și regulile de punctare sunt în curs de verificare. Trimiterea pentru evaluare va fi disponibilă după această verificare.

Se verifică autentificarea…

Un pas, apoi următorul.Înapoi sus ↑