캐릭터 얼굴 그리기

세 원의 중심과 반지름이 주어질 때, 겹치는 부분을 한 번만 세어 세 원이 덮는 영역의 넓이를 소수점 여섯 자리까지 구한다.

어려움8기하수학구현완전 탐색아직 제출이 없습니다시간 제한0.1초메모리 제한256 MB

문제

캐릭터의 얼굴은 원 세 개로 그릴 수 있는 경우가 많다. 얼굴이 원 하나이고 양옆으로 튀어나온 두 귀도 각각 원이면, 원 세 개를 겹쳐 놓는 것만으로 얼굴의 대략적인 윤곽이 나온다. 쥐 캐릭터와 사자 캐릭터, 호랑이 캐릭터와 곰 캐릭터가 모두 그렇다.

원 세 개로 그린 캐릭터 얼굴의 실루엣

이렇게 그린 도형의 넓이를 구하려고 한다. 세 원의 중심과 반지름이 주어질 때, 세 원이 덮는 영역의 넓이를 구하는 프로그램을 작성하시오. 두 원이 겹치는 부분의 넓이는 한 번만 센다.

입력

입력은 세 줄이다. 각 줄에 정수 xx, yy, rr이 공백으로 구분되어 주어지며, 차례대로 원의 중심의 xx좌표, 원의 중심의 yy좌표, 원의 반지름이다.

모든 원은 (0,0)(0, 0)(100,100)(100, 100)을 마주 보는 꼭짓점으로 하는 정사각형 안에 들어 있다. 즉 rx100rr \le x \le 100 - r이고 ry100rr \le y \le 100 - r이다. 반지름은 11 이상이다.

세 원 중 두 원이 같은 자리에 같은 크기로 놓이거나, 한 원이 다른 원 안에 완전히 들어가는 경우도 있다.

출력

세 원이 덮는 영역의 넓이를 소수점 아래 여섯째 자리까지 반올림하여 한 줄에 출력한다. 소수점 아래는 항상 여섯 자리를 모두 적는다.