Soluții trimise

Rezumat problemă

Se consideră un text memorat într-o matrice M, definită prin coordonatele colţului stânga sus (x1,y1) şi coordonatele colţului dreapta jos (x2,y2).

Prin aplicarea unui algoritm de compresie, matricei M i se asociază un şir de caractere, notat CM. Şirul de caractere CM este construit prin aplicarea următoarelor reguli:

  1. dacă matricea M are o singură linie şi o singură coloană atunci CM conţine numai caracterul memorat în matrice;
  2. dacă toate elementele matricei sunt identice atunci întreaga matrice M se comprimă şi CM este şirul kc, unde k reprezintă numărul de caractere din matrice, iar c caracterul memorat;
  3. dacă matricea este formată din caractere diferite şi are cel puţin două linii şi două coloane atunci:
    • matricea este împărţită în 4 submatrice A, B, C, D după cum este ilustrat în figura alăturată, unde coordonatele colţului stânga sus ale submatricei A sunt (x1,y1), iar coordonatele colţului dreapta jos sunt ((x2+x1)/2,(y2+y1)/2);
    • CM este şirul *CACBCCCD unde CA, CB, CC, CD sunt şirurile de caractere obţinute, în ordine, prin compresia matricelor A, B, C, D utilizând acelaşi algoritm;
  4. dacă matricea este formată din caractere diferite, are o singură linie şi mai multe coloane atunci CM este şirul *CACB unde A, B, CA, CB au semnificaţia descrisă la punctul 3.;
  5. dacă matricea este formată din caractere diferite, are mai multe linii şi o singură coloană atunci CM este şirul *CACC unde A, C, CA, CC au semnificaţia descrisă la punctul 3.;

Dat fiind şirul de caractere CM ce se obţine în urma aplicării algoritmului de compresie asupra unei matrice M de dimensiune NxN să se determine:

  1. numărul de împărţiri care au fost necesare pentru obţinerea textului compresat;
  2. matricea iniţială din care provine textul compresat.
ID   Utilizator Problema Data încărcării Stare
Boaca Andrei (andreivkrekvei) Compresie 20 August 2019, 16:15 Evaluare finalizată 100
Boaca Andrei (andreivkrekvei) Compresie 20 August 2019, 16:13 Evaluare finalizată 0
Camilla Camilla (camilla) Compresie 17 August 2019, 09:52 Evaluare finalizată 100
Anghel Mihnea (mihnea_anghel) Compresie 16 August 2019, 15:45 Evaluare finalizată 100
Bărbuț-Dică Sami (warriorscats) Compresie 13 August 2019, 11:59 Evaluare finalizată 100
Elev 2020 (ElevElev2020) Compresie 11 August 2019, 16:46 Evaluare finalizată 100
Rusu Bogdan (Bogdan17) Compresie 31 Iulie 2019, 20:08 Evaluare finalizată 100
Rusu Bogdan (Bogdan17) Compresie 31 Iulie 2019, 20:07 Evaluare finalizată 0
Rusu Bogdan (Bogdan17) Compresie 31 Iulie 2019, 20:07 Evaluare finalizată 0
Rusu Bogdan (Bogdan17) Compresie 31 Iulie 2019, 20:06 Evaluare finalizată 0
Slanina Iulia (Iulia0305) Compresie 31 Iulie 2019, 13:26 Evaluare finalizată 100
Hosu Iulia (Iulia3) Compresie 22 Iulie 2019, 14:14 Evaluare finalizată 100
Hosu Iulia (Iulia3) Compresie 22 Iulie 2019, 13:43 Evaluare finalizată 75
Mindrescu Albert (AlbertMindrescu) Compresie 11 Iulie 2019, 01:52 Evaluare finalizată 100
Mindrescu Albert (AlbertMindrescu) Compresie 11 Iulie 2019, 01:43 Evaluare finalizată 5
Mindrescu Albert (AlbertMindrescu) Compresie 11 Iulie 2019, 01:43 Evaluare finalizată E.C
Mindrescu Albert (AlbertMindrescu) Compresie 11 Iulie 2019, 01:24 Evaluare finalizată 5
Gindu Malina (gindu_malina) Compresie 10 Iulie 2019, 17:48 Evaluare finalizată 100
Gindu Malina (gindu_malina) Compresie 10 Iulie 2019, 17:37 Evaluare finalizată 5
Gindu Malina (gindu_malina) Compresie 10 Iulie 2019, 17:36 Evaluare finalizată 0
Nechita Roberta (Robe16) Compresie 10 Iulie 2019, 16:21 Evaluare finalizată 20
Nechita Roberta (Robe16) Compresie 10 Iulie 2019, 16:14 Evaluare finalizată 20
Nechita Roberta (RobertaN) Compresie 10 Iulie 2019, 16:13 Evaluare finalizată 20
Dimofte Marian (marian222200) Compresie 10 Iulie 2019, 09:15 Evaluare finalizată 0
Dimofte Marian (marian222200) Compresie 10 Iulie 2019, 08:21 Evaluare finalizată E.C
Mesota Ioan (MESOTRIST_2) Compresie 06 Iulie 2019, 12:07 Evaluare finalizată 100
Popescu Stefan (PopescuStefan) Compresie 05 Iulie 2019, 19:40 Evaluare finalizată 100
Popescu Stefan (PopescuStefan) Compresie 05 Iulie 2019, 19:38 Evaluare finalizată 40
Popescu Stefan (PopescuStefan) Compresie 05 Iulie 2019, 19:36 Evaluare finalizată 40
Mesota Ioan (MESOTRIST_1) Compresie 04 Iulie 2019, 19:22 Evaluare finalizată 100
Dumitrescul Eduard Valentin (NECUNOSCUT7) Compresie 28 Iunie 2019, 09:37 Evaluare finalizată 100
Birsan Vlad (cyg_vladioan) Compresie 19 Iunie 2019, 19:11 Evaluare finalizată 100
Birsan Vlad (cyg_vladioan) Compresie 19 Iunie 2019, 19:09 Evaluare finalizată 0
Adrian Negreanu-Maior (lanteamadrian) Compresie 17 Mai 2019, 19:58 Evaluare finalizată 100
Negreanu-Maior Andrei Gabriel (lanteamgabi) Compresie 17 Mai 2019, 19:37 Evaluare finalizată 100
Negreanu-Maior Lucia (lanteamlucia) Compresie 17 Mai 2019, 18:02 Evaluare finalizată 100
Ianc Octavian (Ocktitty) Compresie 28 Aprilie 2019, 17:37 Evaluare finalizată 100
Baciu Dragos (Dragos101) Compresie 27 Aprilie 2019, 11:59 Evaluare finalizată 100
Pana Adrian (iminblue) Compresie 22 Aprilie 2019, 12:19 Evaluare finalizată 100
Pana Adrian (iminblue) Compresie 22 Aprilie 2019, 12:16 Evaluare finalizată 0
Savu Daria (Daria321) Compresie 22 Aprilie 2019, 11:24 Evaluare finalizată 100
Savu Daria (Daria321) Compresie 22 Aprilie 2019, 11:24 Evaluare finalizată 100
Savu Daria (Daria321) Compresie 22 Aprilie 2019, 11:14 Evaluare finalizată 5
Savu Daria (Daria321) Compresie 22 Aprilie 2019, 11:06 Evaluare finalizată 0
Savu Daria (Daria321) Compresie 22 Aprilie 2019, 11:05 Evaluare finalizată 0
Salagean Gabriela (gabisalagean76) Compresie 21 Aprilie 2019, 15:09 Evaluare finalizată 100
Marziali Mattia (masecla22) Compresie 14 Aprilie 2019, 15:20 Evaluare finalizată 100
Nechita Roberta (RobertaN) Compresie 03 Aprilie 2019, 16:19 Evaluare finalizată 100
Vale Mihai (fractal) Compresie 27 Martie 2019, 20:30 Evaluare finalizată 100
Vale Mihai (fractal) Compresie 27 Martie 2019, 20:22 Evaluare finalizată 10