numere

Time limit: 0.2s Memory limit: 4MB Input: numere.in Output: numere.outPoints by default: 10p

Un copil construiește un triunghi cu numerele naturale nenule astfel:

  • în vârful triunghiului scrie valoarea 11;
  • completează liniile triunghiului de sus în jos, iar căsuțele de pe aceeași linie de la stânga la dreapta cu numere naturale consecutive, ca în figurile următoare.

În figura din stânga este ilustrat un astfel de triunghi având 55 linii, conținând numerele naturale de la 11 la 1515. În acest triunghi copilul începe să construiască drumuri, respectând următoarele reguli:

  • orice drum începe din 11;
  • din orice căsuță se poate deplasa fie în căsuța situată pe linia următoare în stânga sa (deplasare codificată cu 11), fie în căsuța situată pe linia următoare în dreapta sa (deplasare codficată cu 22);
  • orice drum va fi descris prin succesiunea deplasărilor efectuate.

De exemplu, drumul ilustrat în figura din dreapta poate fi descris astfel: 11, 22, 22, 22.

Cerință

Scrieți un program care rezolvă următoarele două cerințe:

  • citește descrierea unui drum și afișează numărul la care se termină drumul;
  • citește un număr natural nenul KK, determină un drum care se termină cu numărul KK pentru care suma numerelor prin care trece drumul este maximă și afișează această sumă.

Date de intrare

Fișierul de intrare numere.in conține pe prima linie un număr natural CC reprezentând cerința din problemă care trebuie rezolvată (11 sau 22).

  • Dacă CC este egal cu 11, a doua linie din fișier conține un număr natural NN, reprezentând lungimea drumului, iar a treia linie din fișier conține descrierea drumului sub forma a NN valori, 11 sau 22, separate între ele prin câte un spațiu.
  • Dacă CC este egal cu 22, a doua linie din fișier conține numărul natural KK.

Date de ieșire

Fișierul de ieșire numere.out va conține o singură linie pe care va fi scris un singur număr natural. Dacă C=1C = 1, va fi scris numărul cu care se termină drumul descris în fișierul de intrare. Dacă C=2C = 2, va fi scrisă suma maximă a numerelor aflate pe un drum care se termină cu numărul KK.

Restricții și precizări

  • 1N10 0001 \leq N \leq 10 \ 000;
  • 1K100 0001 \leq K \leq 100 \ 000;
  • Pentru rezolvarea corectă a cerinței 11 se acordă 4040 de puncte; pentru rezolvarea corectă a cerinței 22 se acordă 5050 de puncte. 1010 puncte se acordă din oficiu.

Exemplul 1

numere.in

1
4
1 2 1 2

numere.out

13

Explicație

Cerința este 11. Drumul descris are lungimea 44 și trece prin numerele 11, 22, 55, 88, 1313

Exemplul 2

numere.in

2
9

numere.out

19

Explicație

Cerința este 22. Suma maximă se obține pe drumul care trece prin numerele 11, 33, 66, 99 (11 + 33 + 66 + 99 = 1919)

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