[BOJ 2264] 대칭 그림
View as PDF
Submit solution
Points:
1
Time limit:
2.0s
Memory limit:
128M
Problem types
Allowed languages
Assembly, Awk, C, C++, Java, Pascal, Perl, Python, Sed, Text
어떤 사람이 종이에 점을 찍어서 그림을 그렸다. 그림을 다 그려놓고 보니, 이 그림이 대칭인지 아닌지 궁금해졌다.</p>
대칭이라는 말의 의미는, 종이를 한 번 접었을 때, 위쪽 종이에 점이 찍힌 적이 있는 위치와 아래쪽 종이에 점이 찍힌 적이 있는 위치가 일치할 때를 의미한다. 종이에는 결이 있기 때문에, 종이를 접을 때에는 x축에 수직하게(y축에 평행하게)만 접을 수 있다. 종이를 접는 위치가 반드시 종이의 정 가운데일 필요는 없다. 접힌 선 위에 있는 점들은 무시해도 된다.
점을 찍은 순서대로 점의 위치가 주어졌을 때, 이 그림이 대칭인지 판별하는 프로그램을 작성하시오.
입력 형식
첫째 줄에 점을 찍은 회수 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 N개의 줄에는 순서대로 점을 찍은 x, y좌표가 주어진다. 각각의 좌표는 절댓값이 1,000,000,000을 넘지 않는 정수이다. 즉, 종이가 (-1,000,000,000, -1,000,000,000)부터 (1,000,000,000, 1,000,000,000)까지 있다고 생각하면 된다.
출력 형식
가능할 경우에는 첫째 줄에 접은 위치의 x좌표를 출력한다. 접은 위치의 x좌표가 실수로 나오는 경우에는 소수점 아래 첫째 자리만 출력한다. 즉, %.1lf 로 출력하라는 의미이다. 불가능한 경우에는 NO를 출력한다.
예제 입력 1
4
0 0
2 2
2 0
0 2
예제 출력 1
1
예제 입력 2
4
0 1
1 0
3 1
4 0
예제 출력 2
NO
예제 입력 3
5
1 2
2 0
3 1
4 0
5 2
예제 출력 3
3
Comments