Fişierul intrare/ieşire: | expand.in, expand.out | Sursă | Summer Challenge 2020 |
Autor | Ioan Popescu, Tinca Matei | Adăugată de | |
Timp execuţie pe test | 0.05 sec | Limită de memorie | 524288 kbytes |
Scorul tău | N/A | Dificultate | N/A |
Vezi solutiile trimise | Statistici
Expand
K0kalaru47 are un poligon.
Se dă un poligon convex cu N vârfuri. Puteţi muta un vârf A al poligonului într-un alt punct B din plan, doar dacă distanţa euclidiană de la A la B este maxim R.
Cerinţă
Mutaţi vârfurile poligonului astfel încât aria poligonului pe care îl obţineţi să fie cât mai mare.
Punctare
Aveţi acces la teste aici şi la poligoanele comisiei aici
Fie Amax aria poligonului obţinut de comisie, Aconcurent aria poligonului obţinut de concurent pe acelaşi test şi Ainit aria poligonului din input pe acel test.
Fie .
Numărul de puncte pe care îl primiţi pe un test este egal cu:
P | punctaj |
---|---|
P < 30 | 0 puncte |
30 ≤ P < 50 | 1 punct |
50 ≤ P < 60 | 2 puncte |
60 ≤ P < 70 | 3 puncte |
70 ≤ P < 80 | 4 puncte |
80 ≤ P < 90 | 5 puncte |
90 ≤ P < 95 | 6 puncte |
95 ≤ P < 98 | 7 puncte |
98 ≤ P < 99 | 8 puncte |
99 ≤ P < 100 | 9 puncte |
100 ≤ P | 10 puncte |
Date de intrare
Fişierul de intrare expand.in pe prima linie se va afla un număr T, reprezentând numărul testului. Pe a doua linie se vor afla două numere naturale N şi R. Pe următoarele N linii se vor câte două numere reale, separate printr-un spaţiu, reprezentând coordonatele x şi y ale vârfurilor primului poligon. Vârfurile poligonului sunt date în ordine trigonometrică sau invers trigonometrică.
Date de ieşire
În fişierul de ieşire expand.out veţi afişa pe N linii coordonatele ce alcătuiesc poligonul, anume, pe linia i se vor afla coordonatele la care aţi mutat punctul i.
Restricţii
- 2 ≤ N ≤ 50
- Se garantează ca dacă putem muta un vârf A al poligonului într-un punct B din plan, atunci nu există un alt vârf al poligonului care poate fi mutat în B.
- Pe testele 1 şi 2, poligoanele din input sunt regulate.
Exemplu
expand.in | expand.out |
---|---|
0 4 1 0 0 4 0 4 4 0 4 | -0.707107 -0.707107 4.70711 -0.707107 4.70711 4.70711 -0.707107 4.70711 |
Explicaţie
Mutăm vârful A în A', vârful B în B', vârful C în C' şi vârful D în D'.