3232 : 두 박스
- 제한시간
- 1000 ms
- 메모리제한
- 128 MB
- 해결횟수
- 128 회
- 시도횟수
- 398 회
문제
2차원 좌표 평면 위에 두 개의 박스(직사각형) P, Q가 놓여 있다.
각 박스의 변은 x축이나 y축에 평행하다.
박스를 연구하는 학수는 이 두 박스의 교차 상태를 파악하여
내부가 겹쳐 있는지(FACE),
그렇지 않고 선분에서 만나는지(LINE),
그렇지 않고 한 점에서 만나는지(POINT),
아예 만나지 않는지(NULL) 구별하려고 한다.
다음 그림은 두 박스의 여러 가지 교차상태의 예를 보여준다.
FACE인 경우에는 (d)처럼 어느 한 박스가 다른 박스에 포함될 수도 있다는 점에 유의해야 한다.
두 박스의 정보가 주어졌을 때, 두 박스의 교차 상태를 출력하는 프로그램을 작성하시오.
입력형식
표준 입력으로 두 박스의 정보가 한 줄에 하나씩 주어진다.
각 박스의 정보는 왼쪽 아래 꼭짓점 좌표 (x1, y1)과 오른쪽 위 꼭짓점 좌표 (x2, y2)로 구성되는데
이들 좌푯값 x1, y1, x2, y2 (x1 < x2, y1 < y2)가 공백을 사이에 두고 주어진다
출력형식
표준 출력으로 두 박스의 교차 상태를 POINT, LINE, FACE, NULL 중의 하나로 출력한다.
두 박스의 교차 상태는 모두 대문자로 출력한다.
[부분문제의 제약 조건]
모든 부분문제에서 x좌표와 y좌표는 모두 -109이상 109이하인 정수이다.
l 부분문제 1: 전체 100점 중 33점에 해당하며 POINT나 LINE인 경우만 있다.
l 부분문제 2: 전체 100점 중 30점에 해당하며 모든 좌푯값이 0 이상 1,000 이하이다.
l 부분문제 3: 전체 100점 중 37점에 해당하며 원래의 제약조건 이외에 아무 제약조건이 없다.
입력 예1 2 3 5 3 5 8 11 |
출력 예POINT |
입력 예3 5 9 10 5 4 8 11 |
출력 예FACE |
입력 예1 2 3 5 9 3 12 7 |
출력 예NULL |
입력 예3 5 9 10 9 3 12 7 |
출력 예LINE |