-
Notifications
You must be signed in to change notification settings - Fork 0
zielmicha/ocen
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Sprawdzarka do zadań algorytmicznych, szczególnie pierwszego etapu OI i Piątkowych warsztatów. Sprawdzarkę wywołujemy bez argumentów w katalogu w którym znajduje się zadanie. Przykład: $ ls cen.cpp cen1.in cen1.out $ ~/ocen/ocen ------------------- TESTING cen ------------------- testing cen1... 0:00.01 ok --------------------- cen OK ---------------------- $ W razie potrzeby utworzy plik Makefile i skompiluje rozwiązanie. Domyślny limit czasu pojedynczego testu to 5 sekund, liczony według czasu procesora. Przykładowa organizacja plików ------------------------------ ~/oi60 ├── .tasks ├── cen │ ├── cen1.in │ ├── cen1.out │ ├── Makefile │ └── cen.cpp └── usu ├── cen1.in ├── verify ├── Makefile └── cen.cpp Zadanie cen nie wymaga szerszego komentarza. Zostanie ono uruchomione na jednym teście (cen1.in) i wynik zostanie sprawdzony z cen1.out. Natomiast treść zadania usu umożliwia istnienie wielu rozwiązań. Dlatego zamiast korzystać z plików *.out, tworzymy plik verify. Musi być on wykonywalny i zwracać 0 jeżeli wynik jest poprawy, 1 w przeciwnym wypadku. Jako parametry dostaje: nazwę pliku .out, nazwę pliku .in oraz nazwę pliku z wynikiem programu. Jako verify można użyć np. skryptu w Pythonie lub skompilowany C++. Ważne, aby w przypadku języków skryptowych na początku umieścić [Shebang](http://pl.wikipedia.org/wiki/Shebang). Plik .tasks zawiera dwie linijki: cen usu Są to nazwy zadań, które chcemy testować. .tasks nie jest obowiązkowy, ale pozwala przetestować wszystki zadania za jednym razem: $ cd ~/oi60 $ ~/ocen/ocen ------------------- TESTING cen ------------------- --------------------- cen OK ---------------------- ------------------- TESTING usu ------------------- --------------------- tak OK ---------------------- $ Opcje ---------------------- `--task-binary nazwa` - testuje plik wykonywalny `nazwa`, zamiast pliku o nazwie takiej jak zadanie `--test-name nazwa` - testuje zadanie tylko na teście `nazwa`
About
Script for algorithmic contests.
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published