Trigram


Submit solution

Points: 40 (partial)
Time limit: 3.0s
Memory limit: 64M

Author:
Problem type
Allowed languages
Assembly, Awk, C, C++, Java, Perl, Python

Državno natjecanje iz informatike 2016. / Druga podskupina (3. i 4. razred) – Prvi dan natjecanja - 1. zadatak

Trigrami su trojke znakova pomoću kojih se na jednostavan način može definirati sličnost riječi te se često koriste prilikom pretraživanja teksta.

U ovom zadatku proširujemo osnovnu ideju na pretraživanje fraza.

Neka je riječ niz od jednog ili više malih slova engleske abecede, a fraza niz od jedne ili više riječi odvojenih s po jednim razmakom.

Skup trigrama fraze w označavamo s T(w) te ga dobijemo tako da ispred i iza w dodamo znak “#”, zamijenimo svaki razmak u w također znakom “#” te, konačno, uzmemo svaki niz od točno tri susjedna znaka ignorirajući pritom trigrame koje smo već dodali.

Tako je, na primjer, skup trigrama za frazu “rat i mir” jednak {#ra, rat, at#, t#i, #i#, i#m, #mi, mir, ir#}.

Neka |X| označava broj elemenata skupa X. Sličnost dvije fraze w i v definiramo kao kvocijent broja zajedničkih trigrama te ukupnog broja trigrama koji su sadržani u barem jednoj od fraza:

Zadana je fraza w te tekst t (također niz riječi odvojenih razmakom).

Odredite frazu v koja se pojavljuje u tekstu t kao niz uzastopnih riječi te je, od svih takvih, najsličnija frazi w.

Ukoliko postoji više najsličnijih fraza ispišite onu koja se sastoji od najmanjeg broja riječi, a ako još uvijek postoji više najsličnijih, ispišite onu koja se pojavljuje najranije u tekstu t.

Ulazni podaci

U prvom redu nalazi se prirodni broj n (n ≤ 50) – broj riječi u frazi w. U sljedećem redu nalazi se fraza w – niz od n riječi odvojenih s po jednim razmakom.

U sljedećem redu nalazi se prirodni broj m (m ≤ 500) – broj riječi u tekstu t.

U sljedećem redu nalazi se tekst t – niz od m riječi odvojenih s po jednim razmakom.

Svaka riječ u frazi w i u tekstu t je niz od najviše 10 malih slova engleske abecede.

Izlazni podaci

U prvi red ispišite niz riječi odvojenih s točno jednim razmakom – traženu frazu.

Primjer zadatka

Ulaz
1
abc
3
def ghi jkl
Izlaz
def

Ulaz
2
hotel zora
6
rana zora motel zora hostel zora
Izlaz
motel zora
Objašnjenje

Pojašnjenje drugog primjera: U sljedećoj tablici se nalaze sve fraze sadržane u tekstu te sličnost svake sa zadanom frazom.


Comments

There are no comments at the moment.