Forum jest zablokowane. Podczas blokady nie można dodawać ani edytować wiadomości.
Temat: Nie potrafie znalezc błędu
napisalem program do tego zadania i sprawdzalem go z roznymi danymi, dla kazdych wynik jest poprawny aczkolwiek gdy wysylam rozwiazanie pokazuje mi "zła odpowiedz" przy kazdym tescie ocen (oprocz 0 oczywiscie). Istnieje taka mozliwosc ze to co testuje moj kod testuje go tylko pod wzgledem jednego poprawnego rozwiazania a moj po prostu wyswietla inne? jesli nie to jak moge znalezc błąd?
Skompiluj kod na linuxie w taki sposób:
g++ -O3 -static abc.cpp -std=c++11
Zobacz czy wtedy wyniki są poprawne.
g++ -O3 -static abc.cpp -std=c++11
Zobacz czy wtedy wyniki są poprawne.
nie chodzi mi o optymalnosc a o wynik, jakich dwoch ciagow bym nie wzial to wypisze mi poprawny podciag ale gdy wysle zadanie to dostaje blad "zła odpowiedz" czyli ze wynik jest inny.
Ja bym się upewnił, czy na pewno twój program jest dobry. Skoro nawet w treści zadania napisali, że jest kilka odpowiedzi poprawnych, to oznacza, że dopuszczają różne. Zatem na SIO2 musi istnieć taka sprawdzarka, która sprawdza poprawność twojego wyniku. Skoro jednak odpowiedź jest zła, to ocznacza, że program jest zły.
SIO2 oczywiście pokazuje OK dla każdej poprawnej odpowiedzi. Sprawdzałeś swój program na testach ocen? Można je pobrać w zakładce Pliki. Jeżeli na komputerze dla testów ocen uzyskujesz poprawny wynik, zaś po wysłaniu dostajesz komunikat zła odpowiedź to najprawdopodobniej kompilujesz lokalnie rozwiązanie używając innych flag niż sio2 - skompiluj je używając podanej przez Tomasza komendy.
Ja jeszcze zaproponuję flagę -m32, gdyż środowisko na sprawdzaczkach jest 32-bitowe. Ta flaga została dodana do paczki ocen i może wpływać na wyniki.
skorzystalem z tego testera ale przeczytalem tez w pliku info.txt ze "w niektorych zadaniach dopuszczalne jest wiele poprawnych odpowiedzi,
w takim wypadku musisz napisac wlasny program weryfikujacy poprawnosc odpowiedzi," mimo tego sprobowalem sprawdzic moj program i dostalem komunikat "Zle! linia = 1, oczekiwano="ATTT", a wczytano = "T"" i chcialem zapytac czy moze przez przypadek blednie nie zalozylem ze w podciagu 2 lub wiecej takich samych liter nie moze stac obok siebie?
w takim wypadku musisz napisac wlasny program weryfikujacy poprawnosc odpowiedzi," mimo tego sprobowalem sprawdzic moj program i dostalem komunikat "Zle! linia = 1, oczekiwano="ATTT", a wczytano = "T"" i chcialem zapytac czy moze przez przypadek blednie nie zalozylem ze w podciagu 2 lub wiecej takich samych liter nie moze stac obok siebie?
Tak to bylo problemem, blednie zalozylem ze litery nie moga sie powtarzac obok siebie. Teraz dostaje wynik "ok".