Zgłaszanie | Wszystkie zgłoszenia | Najlepsze | Lista |
TLCS - Longest Common Subsequence |
Wersja polska | English version |
Dla podanych dwóch słów x = x1x2...xn and y = y1y2...ym wyznacz najdłuższy wspólny podciąg, to znaczy słowo z = z1z2...zk takie, że każde dwie kolejne litery z odpowiadają pewnym elementom z x: xa, xb oraz z y: yc, yd, gdzie a < b oraz c < d. Zakładać będziemy, że litery we wszystkich występujących słowach będą z zakresu 'a' - 'z' oraz m,n <= 1000.
Wejście
N [liczba zestawów testowych <= 1000]
n x
m y
...
Wyjście
case 1 Y [lub N gdy nie chcemy drukować odpowiedzi dla tego przypadku]
d [długość najdłuższego wspólnego podciągu]
zj p q [pozycja zj w x oraz w y]
...
Tekst w nawiasach [ ] nie występuje na wejściu ani nie powinien byc drukowany na wyjście.
Przykład
Wejście: 3 5 ddacc 3 cac 7 cbbccbc 4 aaca 4 cbeb 5 fdceb Wyjście: case 1 Y 2 a 3 2 c 4 3 case 2 N case 3 Y 3 c 1 3 e 3 4 b 4 5 Wynik punktowy 2
Dodane przez: | mima |
Data dodania: | 2004-11-10 |
Limit czasu wykonania programu: | 5s |
Limit długości kodu źródłowego | 50000B |
Limit pamięci: | 1536MB |
Cluster: | Cube (Intel G860) |
Języki programowania: | All except: GOSU |