Submit solution

Points: 1
Time limit: 2.0s
Memory limit: 64M

Author:
Problem type

Dat je niz reči dužine n kojeg ćemo u dalje tekstu zvati rečnik. Reči su sastavljene od malih slova engleskog alfabeta. Za tekst S koji je takođe sastavljen od malih slova engleskog alfabeta, kažemo da ima razbijanje (r1, r2, ... , rm) ukoliko:

  • ri pripada rečniku za i ∈ [1, m]
  • r1r2 ... rm = S (konkatenacija, nadovezivanje reči)

    Za rečnik kažemo da je nedvosmislen ukoliko svaka reč koja se može dobiti nadovezivanjem reči iz rečnika ima jedinstveno razbijanje.
    Napisati program koji za dati rečnik ispituje da li je dvosmislen ili ne.

Ulaz.

(Ulazni podaci se učitavaju sa standardnog ulaza) U prvom redu ulazne datoteke nalazi se prirodni broj T ≤ 10 koji označava broj primera. Svaki primer je opisan na sledeći način: u prvom redu se nalazi prirodan broj n (2 ≤ n ≤ 100) koji označava broj reči u rečniku. Narednih n linija opisuju rečnik (u svakom redu je data po jedna reč). Između primera neće biti praznih redova. Reči će biti sastavljene od malih slova engleskog alfabeta i njihova dužina neće biti veća od 1000.

Izlaz.

(Izlazni podaci se ispisuju na standardni izlaz) Za svaki primer u uzlaznoj datoteci, u redosledu kojim su dati na ulazu, šampati u posebnom redu dvosmislen ukoliko je rečnik dvosmislen; u suprotnom štampati nedvosmislen.

Primer 1.

standardni ulaz      standardni izlaz
2
4
andre
and
jko
rejko
3
a
ab
bb
        
dvosmislen
nedvosmislen

Comments

There are no comments at the moment.