5 - Klasifikacija figura
Vremensko ograničenje | Memorijsko ograničenje |
---|---|
1000ms | 64MB |
Mali Acko je jako uzbuđen povodom puštanja nove igre kompanije Mećava^TM, zvane Junaci Oluje, u zatvorenu beta fazu. Nažalost, Acko nije bio jedan od srećnika koji su dobili beta ključ, i zbog toga ne može da igra ovu igru. Međutim, njegov prijatelj mali Perica, poznat kao veliki haker, je odlučio da mu pomogne tako što će da provali bazu kompanije Mećava^TM i ukrade jedan beta ključ.
Perica je probio sve nivoe zaštite, osim poslednjeg. Poslednji nivo je jedna matematička zagonetka; zadat je jedan fajl u kome se nalazi \(T\) zapisa. Jedan zapis se sastoji od broja \(N\) i niza tačaka \((X_1,Y_1)\),\((X_2,Y_2)\),\(\ldots\),\((X_N,Y_N)\). Za svaki zapis se postavlja pitanje: “Kada bi povukao izlomljenu liniju \((X_1,Y_1)-(X_2,Y_2)-\ldots-(X_N,Y_N)-(X_1,Y_1)\) koju bi figuru uočio na slici?”.
Perica je uspeo da pronađe misteriozni fajl Klase.txt koji sadrži sve moguće klase figura koje kompanija Mećava^TM raspoznaje. Sadržina fajla je sledeća:
1.Duz
2.Trougao
a.Jednakokraki
b.Pravougli
c.Jednakostranicni
3.Cetvorougao
a.Paralelogram
b.Romb
c.Trapez
d.Pravougaonik
e.Kvadrat
4.Ostalo
Kako je Perica poznato loš sa geometrijom, zamolio vas je za pomoć sa ovim zadatkom.
Opis ulaza
U prvom redu ulaza se nalazi broj zapisa \(T\). Potom slede podaci o svakom zapisu pojedinačno. Svaki zapis se sastoji od broja tačaka \(N\) i potom u svakom redu zasebno koordinatama svake tačke \((X_i,Y_i)\).
Opis izlaza
Izlaz se sastoji od \(T\) linija u formatu
Primarne klase su obeležene brojevima, a sekundarne slovima. Redosled klasa treba biti isti kao u fajlu Klase.txt.
Primer 1
Ulaz
Izlaz
Objašnjenje primera
Figure iz test primera se nalaze na slici dole. Crvenom bojom je označena figura 1, a plavom figura 2.
Prva figura je duž od tačke (1, 1) do tačke (4, 7), a druga je četvorougao između tačaka (1, 1), (7, 1), (8, 3) i (2, 3).
Ograničenja
- \(1\leq T\leq 50.000\), \(-10.000\leq X_i,Y_i\leq 10.000\).
- Tačke obrazuju konveksan mnogougao i date su ili u smeru kazaljke na satu, ili u obrnutom smeru, osim u slučaju kada je rešenje duž, a tada su date redom kako se pojavljuju na duži.
- Za 20% test primera važi \(2\leq N\leq 3\).
- Za ostalih 80% test primera važi \(2\leq N\leq 10\).
Autor | Tekst i test primeri | Analiza rеšenja | Testiranje |
---|---|---|---|
Aleksandar Ivanović | Ivan Stošić | - | Demjan Grubić |
05_klasifikacija_figura.cpp | |
---|---|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 |
|