Sugestia do zadania.

0

Witam mam do wykonania zadanie, ale kompletnie nie wiem jak się za to zabrać.

Eliminator

Twoim zadaniem jest napisanie programu, który ze wskazanego ciągu znaków usunie wszystkie spójne(*) podciągi tożsame z drugim ciągiem znaków.

Wejście

Dwa niepuste wiersze tekstu:

pierwszy zawierający nie więcej niż 100 liter alfabetu łacińskiego
drugi zawierający nie więcej niż 50 liter alfabetu łacińskiego
Wyjście

jeden wiersz tekstu, ujęty w cudzysłowy i zakończony znakiem przejścia do nowego wiersza, powstały poprzez usunięcie z pierwszego wiersza wszystkich spójnych(*) podciągów identycznych z drugim wierszem
Przykład
Wejście:
alala

ala

Wyjście:
""

Wejście:
alaola

la

Wyjście:
"ao"

Przelecenie całego ciągu pierwszego pojedyńczymi literami z drugiego odpada bo usuwane mają być podciągi. Tylko na tyle wpadłem. Nie proszę was o rozwiązanie zadanie za mnie, tylko za drobne sugestie za które będę wdzięczny :)

2

Używając string::find lub strstr znajdujesz wystąpienia drugiego wiersza i zamieniasz pierwszy znak na np '\0xFF'
Po czym zaczynasz wypisywać znak po znaku, jak napotkasz ten specjalny to pomijasz tyle znaków ile wynosi długość drugiego napisu, no chyba że wcześniej znowu napotkasz ten specjalny.

1 użytkowników online, w tym zalogowanych: 0, gości: 1