Bergskedja
시간 제한6초메모리 제한1024 MB
지면 위 여러 봉우리에서 45도로 내려오는 이등변 직각삼각형들이 덮는 전체 넓이를, 겹치는 부분은 한 번만 세어 구한다.
문제
Markus blir ofta uttråkad på mattelektionerna, och har därför börjat rita olika landskap i sitt räkneblock. Han har till exempel upptäckt följande procedur för att enkelt rita en snygg bergskedja:
- Börja med att rita ut marken som en horisontell linje.
- Välj sedan ut ett antal punkter ovanför marken. Dessa punkter kommer representera bergstoppar.
- Från varje punkt drar man sedan två linjer som skär marken i 45 graders vinkel, vilket skapar ett antal likbenta rätvinkliga triangelar.
- Fyll sedan i trianglarna. Notera att trianglarna kan överlappa, och att man då inte behöver fylla i alla helt.
Givet punkter som ritats ut ovanför marken, beräkna arean som behöver fyllas i för att skapa bergskedjan.
입력
Den första raden innehåller talet . De följande raderna innehåller vardera två heltal och , separerade med mellanslag. Dessa beskriver koordinaterna för de punkter som ritats ut.
출력
Ditt program ska skriva ut ett tal på en rad, den totala arean som behöver fyllas i.
Ett svar på det här problemet kommer att räknas som korrekt om det absoluta felet är mindre än . Notera att man för full poäng behöver kunna skriva ut svar med många siffrors precision (se exempel 3). Om man till exempel kör C++ och cout så kommer man därför behöva ange vilken precision man vill ha innan man skriver ut svaret.
제한
힌트

En illustration av det första exemplet.