Co to znaczy „hacki”? w Codeforces? Co oni robią?


Najlepsza odpowiedź

Codeforces ma funkcję hakowania podczas konkursów. W tym przypadku hakowanie nie oznacza bezprawnego włamania do systemu komputerowego.

Codeforces dzieli zawodników na grupy po 9–10 osób zwane salą. Podczas hakowania możesz zobaczyć rozwiązanie innych w swoim pokoju. Jeśli uważasz, że masz przypadek testowy, w którym kod może dać złą odpowiedź. Po prostu kliknij hack i podaj swój przypadek testowy. Jeśli twoje założenie było słuszne, otrzymasz dodatkowe 100 punktów, w przeciwnym razie 50 punktów zostanie odjętych za niewłaściwą próbę włamania.

Przed włamaniem musisz zablokować swoje rozwiązanie, blokowanie oznacza, że ​​nie możesz później edytować kodu.

Hakowanie jest bardzo dobre, ponieważ uczy czytać i rozumieć kod innych osób, co jest bardzo ważną cechą, którą każdy programista musi posiadać.

Odpowiedź

Podczas konkursu przesłane przez Ciebie rozwiązanie jest testowane na nielicznych przypadkach testowych zwanych „testami wstępnymi”. Ma to na celu skrócenie czasu testowania podczas zawodów.

Czasami rozwiązanie może przejść testy wstępne i nadal być błędne. Jeśli więc uważasz, że rozwiązanie przesłane przez kogoś innego, które przeszło testy wstępne, jest błędne (po zablokowaniu rozwiązania „będziesz mógł zobaczyć rozwiązania innych”), możesz podać przypadek testowy, dla którego rozwiązanie się nie powiedzie.

Otrzymujesz +100 punktów, jeśli rozwiązanie zawiodło dla twojego przypadku testowego (udana próba włamania) lub -50 punktów, jeśli przeszło (nieudana próba włamania).

Aby móc zhakować rozwiązanie, należy 1. przedstawić rozwiązanie problemu, które przejdzie pomyślnie testy wstępne. 2. zablokuj swoje rozwiązanie

Uwaga: po zablokowaniu nie możesz już przesyłać żadnych rozwiązań problemu. Po zablokowaniu możesz zobaczyć inne rozwiązania, które przeszły testy wstępne.

Rozwiązania zostaną sprawdzone z całym zestawem przypadków testowych po zakończeniu konkursu.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *