Cześć, usiłuję rozwiązać w Javie to zadanie: http://www.spoj.pl/problems/DICTSUB/ ale niestety ciągle dostaję TLE. Czy mógłby ktoś podpowiedzieć w jaki sposób najefektywniej sprawdzać czy dane słowo jest podciągiem drugiego, przy tych założeniach jakie tam są (czyli można usuwać literki, jednak nie wolno zamieniać ich kolejności). Oczywiście dekompresja z RLE do zwykłego słowa i potem "zwykłe" sprawdzanie (gdzie jedyną optymalizacją jest to, że jeśli w pewnym momencie mogę stwierdzić, że dane słowo nie jest podciągiem innego patrząc na ilość liter pozostałych do sprawdzenia w słowie i w szukanym podciągu) jest za wolne. Może trzeba to na jakimś drzewie robić? Patrząc na format danych wejściowych (długość słowa nawet do 10000 znaków, a w RLE max 200 znaków) wydaje mi się, że sporo liter takich samych będzie po sobie następowało czyli będą to słowa pokroju 50A70E100G itp. itd.
Dzięki z góry za pomoc.
kyrtap