Zgłaszanie | Wszystkie zgłoszenia | Najlepsze | Lista |
Problem hidden on 2013-04-22 13:56:25 by Sławomir Wernikowski
WIPING08 - Strzelnica 2 |
Zadanie eliminacyjne w konkursie PING 2013 organizowanym przez
Wydział Informatyki Zachodniopomorskiego Uniwersytetu Technologicznego w Szczecinie
Strzelnica 2
Dana jest tarcza strzelnicza ulokowana na płaszczyźnie. Tarcza zawarta jest w kole o środku w punkcie (Xc,Yc) i promieniu R. Tarcza przecięta jest n prostymi przechodzącymi przez środek tarczy i dzielącymi koło na 2n identycznych wycinków. Pierwsza z prostych jest zawsze pionowa.
Wycinki numerowane są od 1, przy czym numer 1 ma zawsze ten wycinek, który położony jest w górnej części koła na prawo od prostej pionowej. Wycinki numerowane są zgodnie z kierunkiem wskazówek zegara.
Strzelec oddaje serię strzałów w kierunku tarczy, a każdy z nich kończy się trafieniem w punkt o współrzędnych (xs,ys). Trafienia punktowane są następująco:
- za trafienie poza obrębem tarczy: 0 punktów
- za trafienie dokładnie w środek tarczy: 2n+1 punktów
- za trafienie w wycinek o numerze i: i punktów
- za trafienie w którąkolwiek z prostych rozdzielającących zalicza się punktację tego z sąsiadujących wycinków, która jest większa.
Budowę tarczy dla n = 2 oraz odpowiadający schemat punktowania ilustruje następujący rysunek:
Trafienie oznaczone żółtą kropką dałoby strzelcowi 3 punkty
Twoim zadaniem jest obliczenie liczby punktów zdobytych przez strzelca, oddającego do tarczy nieznaną z góry liczbę strzałów.
Wejście
Jeden wiersz tekstu zawierający kolejno:
- xc dana zmiennoprzecinkowa z przedziału (-1.0e6 .. 1.0e6)
- yc dana zmiennoprzecinkowa z przedziału (-1.0e6 .. 1.0e6)
- R dana zmiennoprzecinkowa z przedziału (0 .. 1.0e6)
- n dana całkowita z przedziału (1 .. 1000)
a następnie nieznana z góry liczba wierszy (w tym zero wierszy), z których każdy zawiera parę
xs ys
obie wartości zmiennoprzecinkowe z przedziału (-1.0e6 .. 1.0e6)
Wyjście
Jeden wiersz tekstu zawierający daną całkowitą stanowiącą łączną liczbę punktów zdobytych przez strzelca w zakończonej właśnie serii strzałów.
Przykład
Wejście:
0. 0. 1. 2
1. 1.
.5 .5
-.5 -.5
0. 0.
Wyjście:
9
Informacje dodatkowe
-
program zostanie uruchomiony 10 razy dla różnych zestawów danych
-
każde poprawne rozwiązanie daje 10% punktacji zadania
-
zadanie ma wartość punktową 5,0
Dodane przez: | Sławomir Wernikowski |
Data dodania: | 2013-02-23 |
Limit czasu wykonania programu: | 0.200s |
Limit długości kodu źródłowego | 5000B |
Limit pamięci: | 1536MB |
Cluster: | Cube (Intel G860) |
Języki programowania: | C CSHARP C++ 4.3.2 CPP C99 JAVA PAS-GPC PAS-FPC PERL PERL6 PHP |