Szkolna Liga Zadaniowa 2024/25
Serdecznie zapraszamy do udziału w Szkolnej Lidze Zadaniowej w bieżącym roku szkonym 2024/25.
Udział w lidze jest dobrowolny i polega na rozwiązywaniu zadań z programowania dostępnych na stronie turnieju. W tym roku liga organizana będzie tylko w jednej kategorii maturalnej, a zadania układane będą na podstawie obowiązującej podstawy programowej i będą sprawdzać konkretne umiejętności zapisane w tejże podstawie.
Dla uczestników w najwyższymi wynikami dyrekcja szkoły obiecała
Zasady oceny prac
Uczestnik ligii przedstawia rozwiązanie zadania w postaci programu komputerowego, który następnie przesyła do oceny. Rozwiązanie powinno składać się z jednego pliku zawierającego tekst źródłowy programu napisanego w języku C/C++. Plik źródłowy powinien posiadać rozszerzenie ".cpp". Ten sam plik źródłowy może być oceniany wielokrotnie.
Plik źródłowy należy przesłać korzystając z odsyłacza umieszczonego pod treścią zadania. Po poprawnym przyjęciu programu źródłowego zostanie on automatycznie skompilowany i przetestowany. Jeśli program nie kompiluje się serwer odmówi przyjęcia pliku źródłowego. Każde zadanie ma określony maksymalny czas wykonania, limit dostępnej pamięci i biblioteki, których można używać.
Wysłany program zostanie sprawdzony na zestawie 20 testów danych wejściowych. Jeśli program udzieli poprawnej odpowiedzi, to autor otrzymuje 1 punkt za taki test. Za każde zadanie można otrzymać maksymalnie 20 punktów. Zestawy testowe są generowane losowo, można więc przyjąć, że przy każdym kolejnym sprawdzaniu są inne.
Jeśli po upływie czasu przeznaczonego na wykonanie program nadal będzie działał, to zostanie przerwany, a sam test oceniony jako niezaliczony.
Podobnie niezaliczony będzie test, jeśli program zwróci kod wyjścia różny od zera lub też nie wypisze znaku nowej linii po ostatniej linii wyjścia.
Wymagania stawiane programom
Każdy program powinien odczytywać dane ze standardowego wejścia (z klawiatury) i zapisywać
wyniki na swoje standardowe wyjście (na ekran). Program musi działać wsadowo, tzn. po
uruchomieniu powinien wczytać dane z klawiatury, obliczyć żadany wynik i wypisać go na
ekranie. Program nie może oczekiwać innych danych niż te, które określono w specyfikacji
wejścia, ani też wypisywać innych wyników czy wartości oprócz wymaganych przez specyfikację
wyjścia.
Program nie może oczekiwać jakiejkolwiek ingerencji użytkownika, np. oczekiwać naciśnięcia
klawisza w celu rozpoczęcia obliczeń czy zakończenia programu. Niedozwolone jest dołączenie
do programu żadnych innych bibliotek niż te, których nazwy podano pod treścią zadania.
Program od momentu uruchomienia ma do dyspozycji określony czas na wykonanie - domyślnie 0.25 sekundy na każdy test. W tym czasie program powinien wczytać dane, wypisać obliczony wynik i zakończyć swoje działanie, zwracając tzw. kod wyjścia (return 0) równy zero.
Ostatnia wypisana przez program linia danych powinna kończyć się znakiem nowej linii.
Wskazówki
Dane wejściowe przekazywane programowi podczas sprawdzania zawsze są poprawne, tzn. zgodne
ze specyfikacją wejścia. Jeżeli każdy wiersz wejścia zawiera jedną liczbę, to jej pierwsza
cyfra lub znak "-" jest zawsze pierwszym znakiem w linii, zaś ostatnia cyfra znakiem
ostatnim przed znakiem nowej linii.
Jeśli wiersz pliku wejścia zawiera kilka liczb, to zawsze są one oddzielone dokładnie jedną
spacją. Z poprawności wejścia wynika w szczególności, że liczby zapisane są poprawnie i mogą
być wczytywane bezpośrednio do zmiennych numerycznych.
Twój program musi wygenerować plik wyjściowy trzymając się powyższych reguł. Nigdy nie należy zapisywać znaków spacji ani na końcu, ani na początku linii. Jeśli należy oddzielić liczby od siebie w wierszu, to zawsze powinno to być wykonane przy pomocy jednej spacji. Liczb całkowitych nie należy zapisywać w postaci z kropką, np. 12.0, a do obliczeń na liczbach rzeczywistych używać zawsze typu double.
Ostatnia linia wyjścia zawsze musi być zakończona znakiem nowej linii - zawsze wypisuj nową linie w ostatnim wierszu wyjścia. Staraj się przede wszystkim dbać o poprawność algorytmu - tylko bowiem poprawne rozwiązania zagwarantują ci komplet punktów.
Przykład poprawnie napisanego programu
Zadanie
Dane są dwie liczby całkowite. Napisz program, który wyznaczy ich sumę oraz iloczyn.
Wejście
W pierwszej i jedynej linii wejścia zapisano dwie liczby całkowite a i b z zakresu 0..10000, oddzielone pojedynczą spacją.
Wyjście
Wyjście powinno zawierać w pierwszej linii sumę a+b, w linii drugiej zakończonej znakiem nowej linii wartość iloczynu a*b.
#include<iostream> using namespace std; int main(int argc, char** argv) { int a, b; long long w; cin>>a>>b; w = a * b; cout<<a+b<<endl; cout<<w<<endl; return 0; }
... powodzenia!!