http://pl.spoj.com/problems/AL_15_02/55
Coś nie mam szczęścia do tego zadania. Czy mogę prosić o jakieś możliwie ambitne testy? Czy w zadaniu tym włączony jest sędzia dokładny?
created
last reply
- 20
replies
- 1.6k
views
- 11
users
- 5
likes
- 7
links
http://pl.spoj.com/problems/AL_15_02/55
Coś nie mam szczęścia do tego zadania. Czy mogę prosić o jakieś możliwie ambitne testy? Czy w zadaniu tym włączony jest sędzia dokładny?
@tarpauwatratar Widzę, że rozwiązałeś ostatecznie zadanie. Jakiś kruczek znalazłeś? Próbowałem już na 2 różne sposoby i dalej WA. Więc albo nie rozumiem do końca treści, albo robię coś głupiego;).
A ja zachęcam do nieużywania instrukcji go to, zmiennych globalnych, użycie jednej [lub dwu klas], z metodami: kompresja i dekompresja i wreszcie, tak jak to robią “najlepsi koderzy”, nie [nad]używać funkcji main() i wszystko rozpoczynać w funkcji start() lub starter()
Czyli:
main(){
start();
return 0;
// i to by było na tyle
}
A tak na poważnie, co ma piernik do wiatraka? Co powyższe [także dwie funkcje] ma wspólnego z rozwiązaniem zadania? Powyższe ma tylko wpływ na jakość kodu, jego czystość[brudność ] czy ewentualnie nawet piękność kodu.
“zwykły” kod <= czysty kod <= piękny kod <-- w takiej kolejności.
Do rozwiązania tego zadania wystarczy uważne przeczytanie treści zadania i skupienie się na kompresji, a szczególnie na:
Kompresji liter dokonujemy tylko wtedy gdy ich długość po skompresowaniu jest mniejsza niż długość liter bez kompresji.
i
Podobnie jak ma to miejsce w przypadku liter kompresję przeprowadzamy tylko wtedy gdy wyraz w postaci skompresowanej jest krótszy niż dana liczba jego wystąpień porozdzielana spacjami.
gdzie krótsza [mniejsza] to co innego niż mniejszarówna. Natomiast jak to zastosujesz w swoim kodzie, nie ma żadnego znaczenia. Polecam użyć instrukcji goto i AC gwarantowane.
PS
Sędzia w tym zadaniu jest bardzo miłościwy i mało dokładny. Ignoruje wszystkie nadmiarowe białe znaki, gdzie nadmiarowe to więcej niż 1 wymagany i konieczny…
Witam,
Mam pytanie odnośnie tego zadania.
We wzorcowym teście w drugiej linii występuje spacja po 2 słowie kkkkompressja.
KOMPRESJA
kkkkompressja kkkkompressja
kkkkompressja tekstu tekstu
Czy to oznacza że na końcu każdego wiersza (oprócz ostatniego) występuje dodatkowa spacja i nie trzeba jej już dodawać przy wczytywaniu linii do stringa(inaczej wyrazy by się zlały w jeden wyraz)?
Poniżej zamieszczam mój kod. Wydaje mi się że problem leży właśnie w białych znakach. Proszę o jakomś wskazówke w rozwiązaniu problemu.
Masz rację, problem leży w białych znakach: https://ideone.com/wTM64i23
Nie wiem czy w testach jest spacja na końcu (pewnie nie), ale przecież nikt ci nie zabrania samemu jej dodać, gdyby nie było
Ok, to szukam pomysłu
https://ideone.com/9thRmg2