Fişierul intrare/ieşire: | mosia.in, mosia.out | Sursă | OJI 2004, clasele 11-12 |
Autor | Rodica Pintea | Adăugată de | |
Timp execuţie pe test | 0.05 sec | Limită de memorie | 4736 kbytes |
Scorul tău | N/A | Dificultate | N/A |
Vezi solutiile trimise | Statistici
Mosia
Pacala a primit, asa cum era invoiala, un petec de teren de pe mosia boierului. Terenul este imprejmuit complet cu segmente drepte de gard ce se sprijina la ambele capete de cate un par zdravan. La o noua prinsoare, Pacala iese iar in castig si primeste dreptul sa stramute niste pari, unul cate unul, cum i-o fi voia, astfel incat sa-si extinda suprafata de teren. Dar invoiala prevede ca fiecare par poate fi mutat in orice directie, dar nu pe o distanta mai mare decat o valoare data (scrisa pe fiecare par) si fiecare segment de gard, fiind cam subred, poate fi rotit si prelungit de la un singur capat, celalalt ramanand nemiscat.
Cerinta
Cunoscand pozitiile initiale ale parilor si valoarea inscrisa pe fiecare par, se cere suprafata maxima cu care poate sa-si extinda Pacala proprietatea. Se stie ca parii sunt dati intr-o ordine oarecare, pozitiile lor initiale sunt date prin numere intregi de cel mult 4 cifre, distantele pe care fiecare par poate fi deplasat sunt numere naturale strict pozitive si figura formata de terenul initial este un poligon neconcav.
Date de intrare
Fisierul de intrare mosia.in contine pe prima linie un numar intreg N, numarul de pari. Pe urmatoarele N linii, se afla cate 3 numere x, y, d, reprezentand coordonatele initiale si distanta cu care poate fi mutat fiecare par.
Date de iesire
In fisierul mosia.out se scrie un numar real cu cel putin 4 zecimale ce reprezinta suprafata maxima cu care se poate mari mosia.
Restrictii
- 3 < N ≤ 1000
- -10000 < x, y < 10000
- 0 < d ≤ 20
- N, x, y, d sunt numere intregi.
- Poligonul neconcav se defineste ca un poligon convex cu unele varfuri coliniare.
- Pozitiile parilor sunt date intr-o ordine oarecare.
- Poligonul obtinut dupa mutarea parilor poate fi concav.
- Pozitiile finale ale parilor nu sunt in mod obligatoriu numere intregi.
Exemplu
mosia.in | mosia.out |
---|---|
4 -3 0 2 3 0 3 0 6 2 0 -6 6 | 30.0000 |
Explicatie
Prin mutarea parilor 1 si 2 cu cate 2 si respectiv 3 unitati, se obtine un teren avand suprafata cu 30 de unitati mai mare decat terenul initial.