puzzle

Time limit: 0.1s Memory limit: 64MB Input: puzzle.in Output: puzzle.out

Maria a primit cadou de ziua ei o cutie cu piese de puzzle, etichetate cu numere naturale. Pentru a-l rezolva, trebuie să lipească între ele, în ordinea în care le extrage din cutie, cât mai multe piese, formând astfel grupuri de piese.

Două piese de puzzle se pot lipi între ele dacă numerele de pe etichetele lor au cel puțin trei cifre comune. La operația de lipire a două piese se obține un grup de piese care va fi etichetat cu numărul obținut prin alipirea primelor patru cifre de pe prima etichetă cu ultimele patru cifre de pe cea de a doua etichetă (dacă numerele de pe etichete nu au cel puțin patru cifre se păstrează doar cele existente fără a adăuga altele). O piesă se poate lipi de o altă piesă sau de un grupul de piese anterior creat (dacă acesta există), sau poate forma singură un grup.

De exemplu, dacă pe etichete avem numerele 133454133454 și 35231433523143 atunci putem lipi cele două piese deoarece au în comun cinci cifre (o cifră 11, două cifre 33, o cifră 44 și o cifră 55). În urma lipirii obținem un grup cu eticheta 1334314313343143.

Pentru a rezolva jocul Maria extrage pe rând din cutie câte o piesă. Dacă aceasta se poate lipi de ultimul grup format atunci o lipește de el și actualizează eticheta grupului, altfel pune deoparte grupul respectiv și începe să formeze un nou grup pornind cu piesa extrasă.

După ce formează grupurile Maria alege etichete de grupuri în următoarea ordine: prima dată alege eticheta cu număr maxim de cifre distincte. Dacă sunt mai multe, o alege pe cea cu valoarea cea mai mică. Dintre etichetele rămase alege următoarea etichetă după aceiași regulă. Continuă procedeul până când a ales KK etichete.

Cerințe

Cunoscând cele NN numere naturale care se găsesc pe etichetele pieselor de joc, în ordinea în care aceste se extrag din cutie, să se determine:

  1. Numărul de grupuri pe care le obține Maria după ce rezolvă jocul de puzzle;
  2. Cele KK numere înscrise pe etichetele grupurilor alese de Maria.

Date de intrare

În fișierul puzzle.in se găsesc pe prima linie, separate prin câte un spațiu, CC, NN și KK, unde CC reprezintă cerința ce trebuie rezolvată, NN numărul de piese din joc, KK numărul de valori cerute la cerința 22. Pe linia următoare, separate prin câte un spațiu, sunt cele NN numere înscrise pe etichetele pieselor de joc, în ordinea în care se extrag din cutie.

Date de ieșire

Dacă cerința este 11, fişierul de ieşire puzzle.out va conţine pe prima linie un număr natural GG, reprezentând numărul de grupuri obținut după finalizarea jocului.

Dacă cerința este 22 pe prima linie a fișierului de ieșire puzzle.out se vor scrie, separate prin câte un spațiu, cele KK numere înscrise pe etichetele grupurilor alese de Maria.

Restricții și precizări

  • 1C21 \leq C \leq 2
  • 1N100 0001 \leq N \leq 100 \ 000
  • 1K101 \leq K \leq 10
  • Numerele de pe etichetele pieselor sunt numere naturale cu cel mult nouă cifre;
  • Pentru toate datele de test există soluție.
# Punctaj Restrictii
1 53 C=1C = 1
2 7 C=2C = 2, K=1K = 1
3 13 C=2C = 2, K=2K = 2
4 27 C=2C = 2, K>2K > 2

Exemplul 1

puzzle.in

1 6 1
13345 23143 4343 784532 432 7826

puzzle.out

2

Explicație

Piesa cu eticheta 1334513345 se poate lipi cu piesa cu eticheta 2314323143, obținând astfel grupul cu eticheta 1334314313343143 la care se poate lipi piesa cu eticheta 43434343 și obținem 1334434313344343 care nu se mai poate lipi cu următoarea piesă cu eticheta 784532784532, dar această piesă se va lipi cu piesa etichetată cu 432432 și obținem 78454327845432 care în continuare se lipește cu piesa 78267826 și obținem a doua etichetă a unui grup 7845782678457826.

Exemplul 2

puzzle.in

2 6 1
13345 23143 4343 784532 432 7826

puzzle.out

78457826

Explicație

În urma grupării pieselor obținem două grupuri etichetate cu 1334434313344343 și respectiv 7845782678457826. Dintre acestea 7845782678457826 are 66 cifre distincte, iar 1334434313344343 are doar 33 cifre distincte. Deci valoarea căutată este 7845782678457826.

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