Fișierul intrare/ieșire adunscad.in, adunscad.out Sursă OJI 2011 clasa a 8-a
Autor Marinel Șerban Adăugată de avatar spatarel Spatarel Dan-Constantin spatarel
Timp de execuție pe test 0.05 sec Limită de memorie 2048 KB
Scorul tău N/A Dificultate stea de rating de tip fullstea de rating de tip fullstea de rating de tip fullstea de rating de tip emptystea de rating de tip empty
open book Poți vedea testele pentru această problemă accesând atașamentele .

Adunscad (clasa a 8-a)

Considerăm un număr întreg N și un șir de M cifre zecimale nenule. Să se determine dacă numărul N poate fi rezultatul unei expresii aritmetice simple (fără paranteze), formată exclusiv din cifrele șirului citit și din operatorii aritmetici desemnați pentru operațiile de adunare și scădere (+, -).

Cerință

Scrieți un program care citește numerele N și M de pe prima linie a fișierului de intrare și șirul de M cifre de pe linia următoare și determină și afișează expresia găsită sau valoarea 0 în cazul în care nu există soluție.

Date de intrare

Fișierul de intrare adunscad.in conține pe prima linie numerele întregi N M, separate printr-un spațiu, reprezentând valoarea ce trebuie obținută la evaluarea expresiei și numărul de cifre din șir. Linia a doua a fișierului de intrare conține șirul celor M cifre nenule, separate prin câte un spațiu.

Date de ieșire

În fișierul de ieșire adunscad.out va conține pe prima linie expresia determinată, în cazul în care există soluție, sau valoarea 0 în cazul în care nu există soluție.

Restricții

  • -180 ≤ N ≤ 180
  • 2 ≤ M ≤ 20
  • În șirul citit cifrele se pot repeta.
  • Toate cifrele din șir trebuie să apară și în expresia aritmetică, în aceeași ordine în care au fost citite.
  • În expresia aritmetică, orice cifră trebuie să fie precedată de un operator; în cazul în care prima cifră este precedată de operatorul + acesta nu se pune în expresie. În expresia aritmetică nu există spații.
  • În cazul în care soluția nu este unică se va afișa o soluție corectă.

Exemplu

adunscad.in adunscad.out Explicație
21 4
3 9 1 8
3+9+1+8
Soluție corectă utilizând numai operatorul ‘+’
-1 4
1 2 3 5
-1+2+3-5
Soluție corectă. O altă soluție corectă este: -1-2-3+5
-7 7
1 1 1 1 1 1 1
-1-1-1-1-1-1-1
Soluție corectă utilizând numai operatorul ‘-’
12 3
1 2 3
0
Nu există soluție

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

Indicii de rezolvare

Arată 5 categorii