Fişierul intrare/ieşire:1234.in, 1234.outSursăCCEX 2009
AutorRadu VatavuAdăugată deMariusMarius Stroe Marius
Timp execuţie pe test0.5 secLimită de memorie20480 kbytes
Scorul tăuN/ADificultateN/A

Vezi solutiile trimise | Statistici

1234

Se dau două numere întregi alcătuite din cifrele {1, 2, 3, 4} asupra cărora veţi efectua operaţii aritmetice simple (+, -). Numerele vor fi furnizate printr-o imagine alb-negru.

Definiţii

O imagine alb-negru este reprezentată printr-o matrice de înălţime h (numărul de linii) şi lăţime w (numărul de coloane), unde fiecare element reprezintă un pixel alb sau negru, după cum valoarea este 1 sau 0.

Un obiect este un grup conectat de pixeli de culoare neagră din imagine. Doi pixeli de coordonate (i1, j1) şi (i2, j2) sunt conectaţi dacă |i1 - i2| ≤ 1 şi |j1 - j2| ≤ 1. Aceste condiţii înseamnă că un pixel are cel mult 8 alţi pixeli vecini.

Veţi dispune de o imagine care are doar 6 tipuri diferite de obiecte: cifrele 1, 2, 3, 4 şi operatorii +, -, care compun expresia ce va trebui evaluată. În figura de mai jos, rezultatul expresiei este 46.

O imagine ce conţine o expresie de evaluat. Obiectele sunt
întotdeauna de culoare neagră, iar fundalul de culoare albă.

Cerinţă

Va trebui să calculaţi rezultatul expresiei furnizate prin intermediul unei imagini alb-negru.

Date de intrare

Fişierul de intrare 1234.in conţine pe prima linie, separate printr-un spaţiu, dimensiunile matricei: înălţimea h şi lăţimea w. Următoarele h linii vor conţine reprezentarea matricei cu exact w caractere pe o linie. Vor fi două tipuri de caractere: 1, reprezentând culoarea alb şi 0 reprezentând culoarea negru. Între caracterele 0 şi 1 nu vor fi spaţii iar fiecare linie are exact w caractere.

Date de ieşire

Fişierul de ieşire 1234.out va conţine un singur număr reprezentând rezultatul expresiei.

Restricţii

  • 1 ≤ h, w ≤ 150
  • În fişierul de intrare se vor găsi doar două numere, un operator (+, -) şi un semn egal (=).
  • Fiecare număr conţine cel mult 4 cifre iar rezultatul poate fi reprezentat, de asemnenea, cu 4 cifre.
  • Operatorul - este binar, adică nu se vor găsi expresii precum -5+6=.
  • Caracterele expresiei vor fi aliniate.

Exemplu

1234.in1234.out
21 120
111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
111111111111111100001111111111000011111111111111111111111111110001111111111111111000001111111111111111111111111111111111
111111111111111100001111111100000000011111111100001111111111000000001111111111110000001111111111111111111111111111111111
111111111111110000001111111000000000001111111100001111111100000000000111111111110000001111111111111111111111111111111111
111111111111100000001111110000111100001111111100001111111100001110000011111111100000001110000000000000111111111111111111
111111111100000000001111110000111100000111111100001111111111101110000111111111001000001110000000000000111111111111111111
111111111100001000001111111110111100001111111100001111111111111110000111111110011000001110000000000000111111111111111111
111111111100111000001111111111111100001110000000000000011111111100001111111110011000001110000000000000111111111111111111
111111111111111000001111111111111000001110000000000000011111111100011111111100111000001111111111111111111111111111111111
111111111111111000001111111111110000011110000000000000011111111000000111111001111000001111111111111111111111111111111111
111111111111111000001111111111100001111110000000000000011111111111000011110011111000001110000000000000111111111111111111
111111111111111000001111111111000011111111111100001111111111111111000011100000000000000010000000000000111111111111111111
111111111111111000001111111100000111111111111100001111111111111111000001100000000000000010000000000000111111111111111111
111111111111111000001111111000001111111111111100001111111111101111000011100000000000000010000000000000111111111111111111
111111111111111000001111111000000000000111111100001111111100001111000011100000000000000011111111111111111111111111111111
111111111111111000001111110000000000000111111100001111111110000000000111111111111000001111111111111111111111111111111111
111111111111111000001111110000000000000111111111111111111111000000001111111111111000001111111111111111111111111111111111
111111111111111000001111110000000000000111111111111111111111111000111111111111111000001111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
46

Atenţie!

Problema dispune de un soft adiţional care vă va ajuta să generaţi fişiere de intrare. Softul, împreună cu un ghid de utilizare, poate fi descărcat dând click aici. Programul va putea fi utilizat doar în Windows şi necesită .NET. Dacă nu aveţi .NET instalat îl puteţi descărca de la acest link.

Trebuie sa te autentifici pentru a trimite solutii. Click aici

Cum se trimit solutii?

remote content