반응형
리뷰
생각보다 문제를 간단하게 생각하는 사고력이 많이 필요한 것 같다.
문제 풀이
- 사각형1과 사각형2의 왼쪽 아래 및 오른쪽 위 x, y좌표를 각각 받아온다.
- 두 사각형의 동일한 꼭지점의 x, y 좌표를 왼쪽과 아래의 경우 max로 오른쪽과 위의 경우 min으로 받아온다.
- 왼쪽 사각형의 오른쪽x좌표가 오른쪽 사각형의 왼쪽x좌표 크거나 아래쪽 사각형의 위쪽y좌표가 위쪽 사각형의 아래쪽y좌표보다 클 경우 두 사각형은 절대 만나지 않는다, d출력
- 왼쪽 혹은 아래쪽 사각형의 오른쪽 가장자리 꼭지점이 오른쪽 혹은 위쪽 사각형의 왼쪽 꼭지점과 동일할 경우 꼭지점이 닿아있는 케이스 이다, c출력
- 왼쪽 혹은 아래쪽 사각형의 오른쪽 선분이나 위쪽 선분이 오른쪽 혹은 위쪽 사각형의 왼쪽 선분이나 아래쪽 선분이 일치할 경우 선분이 맞닿은 케이스 이다. b출력
- 나머지 케이스인 경우 사각형이 겹치는 경우이므로 a출력
참고 사항
elif로 처리하되 b케이스보다 c케이스가 위에 있어야 혼동이 없다. if로 처리할 경우 별도 함수를 사용해 return 처리해 준다.
정답 코드
def q2527():
# 백준 2527번 직사각형 파이썬
for _ in range(4):
x1, y1, p1, q1, x2, y2, p2, q2 = map(int, input().split())
left = max(x1, x2)
right = min(p1, p2)
bottom = max(y1, y2)
top = min(q1, q2)
if left > right or bottom > top:
print('d')
elif left == right and bottom == top:
print('c')
elif left == right or bottom == top:
print('b')
else:
print('a')
q2527()
728x90
반응형
'알고리즘 공부 > 파이썬(Python)' 카테고리의 다른 글
백준 3085번 사탕 게임 파이썬 (0) | 2024.06.30 |
---|---|
백준 1063번 킹 파이썬 (0) | 2024.06.29 |
백준 10158번 개미 파이썬 (4) | 2024.06.28 |
백준 2477번 참외밭 파이썬 (0) | 2024.06.27 |
백준 14696번 딱지놀이 파이썬 (0) | 2024.06.26 |