graphlogo

Wydział Matematyki i Informatyki

Uniwersytetu Mikołaja Kopernika w Toruniu

Programowanie II 2023/24 (grupa LF)

[K_1] Statki
Data zakończenia: 2024-01-23 12:00
Języki: cpp
Limit czasu: 1.0 s
Limit pamięci: 10 MB
Limit rozmiaru rozwiązania: 1000 kB




Zadanie:
W grze w statki gracze ustawiają na kwadratowej planszy prostokątne statki według pewnych reguł. Napisz program, który sprawdzi czy statki nie nachodzą na siebie.


Wejście:
Liczba całkowita n będąca ilością kolumn i wierszy planszy.
Liczba całkowita k będąca ilością statków.
k statków w postaci x1 y1 x2 y2, gdzie punkt (x1, y1) reprezentuje jeden koniec statku, a (x2, y2) drugi.


Statki zawsze mają szerokość 1. Długość może być dowolna, ale na pewno zmieści się na planszy. Dla statku zajmującego jedno pole x1==x2 i y1==y2.


Współrzędne przyjmują całkowite wartości z zakresu[0; n-1]


Wyjście:
Liczba reprezentująca ilość pustych pól (niezajętych przez statki).
W przypadku jakiejkolwiek kolizji -1.


Wymagania:
Plansza ma zostać zaimplementowana jako klasa.


Klasa ma mieć metody:


·       zliczającą puste pola


·       dodającą statek i zwracającą informację czy udało się tego dokonać czy nastąpiła kolizja.


 


W funkcji main utwórz obiekt klasy Plansza, dodaj wszystkie statki i zwróć wynik.


 


Przykład:
in:
5
4
1 0 3 0
0 4 0 4
2 1 2 3
3 2 4 2
out:
16




 


in:
4
2
1 0 1 3
0 2 2 2
out:
-1




Powrót
© 2009-2020 • ZawodyWeb Team
IKS - Inwestycja w Kierunki Strategiczne na Wydziale Matematyki i Informatyki UMK

Projekt współfinansowany ze środków Unii Europejskiej w ramach Europejskiego Funduszu Społecznego