System Szkopuł – Jak zrobić paczkę zadaniową?

System Szkopuł – Jak zrobić paczkę zadaniową?

Jeśli chcesz zrobić zadanie algorytmiczne czy programistyczne, które będzie umieszczone w systemie Szkopuł
https://szkopul.edu.pl/problemset/
to

  1. Stwórz paczkę jak opisano poniżej
  2. Umieść paczkę na współdzielonym zasobie (np. Google Drive)
  3. Wyślij informacje o paczce na adres wspolpraca znak małpy oki.org.pl


Dlaczego warto wymyślać zadania?
a. Dużo bardziej się rozwijamy
b. Pomagamy innym
c. Rozumiemy pomysły, algorytmy, podejścia


Zwróć uwagę by:
1. Fabuła zadania była ciekawa
2. Treść zadania zrozumiała
3. Testy sprawdzały sytuacje krańcowe, małą i duża ilość danych wejściowych


Instrukcja stworzenia paczki
Oto przykładowa paczka: ciu
Załączona paczka nazywa się ciu.zip
Słowo ciu (nazwa paczki) jest tu ważne i jest przedrostkiem wielu plików.


Cała paczka jest w katalogu ciu i zawiera następujące podkatalog oraz pliki:
config.yml – to najważniejszy plik opisujący całe zadanie
doc – podkatalog z treścią zadania
in – podkatalog z danymi wejściowymi
out – podkatalog z danymi wyjściowymi
prog – wzorcowy kod z rozwiązaniem zadania


config.yml
Składa się z 3 części:
1. tytul: tytuł zadania jaki będzie widoczny na szkopule
2. numery testów i wielkość pamięć jaką program może zużyć
3. numery testów i czas w ms jaki program otrzymuje by rozwiązać problem
Uwaga: Numery testów (0a, 0b, piszemy bez przedrostka ciu)

katalog doc
Tu znajduje się tylko jeden plik – treść zadania jako pdf
Nazwa pliku musi być nazwapaczkizad.pdf
czyli w naszym przypadku: ciuzad.pdf


katalog in
Pliki wejściowe które otrzymuje program który będzie sprawdzany.
Każdy plik wejściowy musi mieć następująca nazwę:
 nazwapaczkinumer.in
Czyli w naszym przypadku:
 ciu0a.in
 ciu0b.in


katalog out
Pliki wyjściowe które sprawdzany program musi wygenerować. Jak sprawdzany program wygeneruje taki sam plik wyjściowy to otrzyma punkty.
Każdy plik wyjściowy musi mieć następująca nazwę:
 nazwapaczkinumer.out
Czyli w naszym przypadku:
 ciu0a.out
 ciu0b.out

Pliki wyjściowe odpowiadają analogicznym plikom wejściowym.
Na przykład
plik ciu0a.in odpowiada plikowi ciu0a.out
plik ciu0b.in odpowiada plikowi ciu0v.out


katalog prog
Znajduje się tam wzorcowy program C++ który służył do wygenerowania wejścia (katalog in) i wyjścia (katalog out).
Plik z kodem C++ musi mieć nazwę: nazwapaczki.cpp
Czyli w naszym przypadku: ciu.cpp


Pytania i odpowiedzi:
> Czy limit pamięci podawany jest w KB?
Dokładnie

> Czy ten plik cpp w folderze prog będzie jakoś uruchamiany podczas sprawdzania?
Ten plik cpp nie będzie w ogóle używany.
Program zawodnika zostanie skompilowany i odpowiednie in i out porównane na podstawie jego programu
cpp jest jako archiwum użytej wzorcówki.
Ale musi być.

> Z którego c++ mam korzystać (w sensie 17, 14, 11)
Możesz uzywać dowolnej wersji c++

> Czy mam dostęp do bits/stdc++.h?
Oczywiście!

> Czy w folderze prog mogą być jeszcze inne programy? (np. Mój pythonowy generator testów, żeby nie pisać miliona wartości ręcznie – zapisuje efekt do pliku)?
W folderze prog może być wzorcówka która się poprawnie kompiluje.
w formacie skrot_nazwy_zadania.cpp
Ale mogą być tez inne dowolne rzeczy.

Dziękuję za każde zadanie!
Daniel Olkowski

Nie dodano jeszcze komentarza, rozpocznij dyskusję pierwszy.

Dodaj komentarz