[BOJ 14096] Pečat

View as PDF

Submit solution

Points: 1
Time limit: 1.0s
Memory limit: 128M

Problem types
Allowed languages
Assembly, Awk, C, C++, Java, Pascal, Perl, Python, Sed, Text

Kad je Hrvatski savez informatičara objavio rang listu s prvoga kruga ovog natjecanja, jedan mladi gospodin prišuljao se i pitao: “A gdje je pečat?”</p>

Da se to ne bi opet dogodilo, ovaj put na rang listu utisnut ćemo pečat ne jednom, nego dvaput. Pečat ima oblik konveksnoga poligona i mjesta na kojima je udaren mogu se preklapati. Vaš je zadatak izračunati ukupni opseg dijela papira prekrivenog otiskom pečata. 

입력 형식

U prvome retku nalazi se prirodan broj N (3 ≤ N ≤ 100 000), broj vrhova pečata.</p>

Svaki od sljedećih N redaka sadrži cijele brojeve x, y (0 ≤ x, y < 109 ), koordinate vrha prvoga pečata utisnutog na papir. Vrhovi su dani u smjeru kazaljke na satu i nikoja tri nisu kolinearna.

U sljedećem retku nalaze se cijeli brojevi Dx, Dy (-109 < Dx, Dy < 109 ) koji čine vektor za koji je drugi pečat pomaknut u odnosu na prvi. 

출력 형식

U jedini redak ispišite traženi opseg. Dozvoljeno je odstupanje od službenog rješenja za 0.001. 

예제 입력 1

3
3 3
1 0
0 1
-1 -1

예제 출력 1

12.07544

예제 입력 2

4
1 4
4 4
3 1
2 1
1 0

예제 출력 2

12.32456

힌트


Comments

There are no comments at the moment.