Zgłaszanie | Wszystkie zgłoszenia | Najlepsze | Lista |
MWP3_1B1 - Cyfry |
Zapewne większość z Was nie pamięta czasów, gdy pod strzechami domostw nie było komputera czy nawet telewizora - to musiało być straszne. Jaś również jest zbyt młody aby pamiętać tak odległą historię, chłopiec jest jednak bardzo zainteresowany życiem ludzi w tamtym okresie. Od jakiegoś czasu trapiło go jedno bardzo istotne pytanie - w co Oni grali? Nasz bohater, typowy przedstawiciel młodego pokolenia będący zagorzałym fanem gier komputerowych, nie był w stanie wyobrazić sobie, żeby ktoś w ogóle nie grał. Jaś postanowił dowiedzieć się jakie gry umilały ludziom wolne chwile w zamierzchłych czasach. Chłopiec wiedział, że z takim pytaniem najlepiej udać się do kogoś z rodziny np. wujka Google albo ciotki Wikipedii. Odpowiedź wujka była błyskawiczna - grali w bierki! Ciotka zaś opowiedziała Jasiowi, że ta prosta gra znana była plemionom germańskim już 2000 lat temu (pełniła wtedy funkcję wyroczni). Jaś zafascynowany odkryciem postanowił bliżej przyjrzeć się tej zapomnianej rozrywce. Czym prędzej kupił zestaw bierek, przeczytał instrukcję i zaczął grać. Niestety, zabawa nie spodobała się naszemu bohaterowi. Gdy miał już zamiar zakończyć grę dokonał ciekawego odkrycia. Niektóre spośród leżących na stosie bierek układały się w rzymskie cyfry - L, X albo V! Odkrycie tak bardzo zainteresowało Jasia, że postanowił odnaleźć wszystkie takie układy bierek i obliczyć ich iloczyn. Niestety bierek było zbyt wiele dlatego też nasz bohater wybrał tylko kilka par, które ma zamiar przeanalizować.
Jaś dokładnie określił sobie jakie warunki powinny być spełnione, aby bierki A i B tworzyły poprawną cyfrę rzymską. Oto one:
- Cyfra L:
- Dokładnie jeden koniec bierki A musi się pokrywać z dokładnie jednym końcem bierki B.
- Mniejszy z kątów pomiędzy bierkami A i B musi być kątem prostym.
- Cyfra X:
- Bierki muszą się przecinać. Punktem przecięcia nie może być żaden z końców bierek A i B.
- Cyfra V:
- Dokładnie jeden koniec bierki A musi się pokrywać z dokładnie jednym końcem bierki B.
- Mniejszy z kątów pomiędzy bierkami A i B musi być większy niż 0 i mniejszy niż 90 stopni.
Całe szczęście Jaś nie żyje w zamierzchłych czasach, posiada w domu komputer i dzięki temu nie musi wykonywać obliczeń ręcznie. Nasz bohater postanowił, że napisze program, który wykona je za niego.
Wejście
W pierwszej linii wejścia znajduje się jedna liczba naturalna N (1 ≤ N ≤ 10) określająca ilość par bierek. W kolejnych liniach znajdują się opisy poszczególnych par.
Opis każdej pary zawarty jest w dwóch liniach. W obydwu wierszach znajdują się po cztery liczby x1, y1, x2, y2 (-105 ≤ x1, y1, x2, y2 ≤ 105) określające współrzędne dwóch punktów będących końcami danej bierki. Ponieważ bierki używane przez Jasia są dosyć nietypowe to może zdarzyć się tak, że będą one miały zerową długość :-)
Wyjście
Dla każdej pary bierek należy wypisać w osobnej linii "L", "X" albo "V" jeżeli tworzą one jedną z tych cyfr albo "-" w przeciwnym wypadku. W ostatniej linii należy wypisać wartość iloczynu wszystkich poprawnych cyfr rzymskich. Należy przyjąć, że początkowa wartość iloczynu wynosi 1.
Przykład
Wejście:
3 4 1 3 0 0 3 3 0 0 4 2 2 2 4 0 0 1 1 3 3 1 1 3 1
Wyjście:
L X V 2500
Dodane przez: | Maciej Boniecki |
Data dodania: | 2010-12-02 |
Limit czasu wykonania programu: | 0.5s |
Limit długości kodu źródłowego | 50000B |
Limit pamięci: | 1536MB |
Cluster: | Cube (Intel G860) |
Języki programowania: | All except: ASM64 GOSU JS-MONKEY |
Pochodzenie: | III Mistrzostwa WWSI w Programowaniu |