728x90
반응형
https://www.acmicpc.net/problem/14671
문제
영정이는 숭실대 학교 앞, 원룸에서 자취를 한다. 원룸 자취방 방바닥에는 곰팡이가 서식하고 있는데, 곰팡이는 시간이 지날 때 마다 증식을 한다. 영정이의 자취방에서 서식하는 곰팡이는 특이한 방식으로 증식하는데, 어떤 한 지점에 곰팡이가 있었다면 그 위치에서 대각선 위 아래로 곰팡이가 증식되고 원래 곰팡이가 있던 자리는 곰팡이가 사라지게 된다. 아래 2번 그림과 같이 곰팡이가 사라지는 지점이자 다시 증식되는 지점이면 곰팡이는 증식된다.
1번 예
2번 예
영정이는 매우 게으름이 많아 미래에 이 곰팡이가 자신의 집을 모두 뒤덮는 시점이 한번이라도 생길 것으로 예측되면 대청소를 하려고 한다. 영정이의 집의 크기와, 현재 곰팡이의 위치가 주어질 때, 영정이가 청소를 해야 하는지 안 해도 되는지 알려주자.
입력
프로그램의 입력은 표준 입력으로 받는다. 입력의 첫 줄에는 영정이의 자취방 바닥의 크기 N과 M, 그리고 바닥에 있는 곰팡이의 개수 K가 주어진다. (2 ≤ N, M ≤ 1,000) (1 ≤ K ≤ 100,000) 둘째 줄부터 K줄에 걸쳐 현재 곰팡이의 위치 x, y가 주어진다. 좌표계는 행렬 좌표계와 일치한다. (1 ≤ x ≤ N) (1 ≤ y ≤ M) 곰팡이는 중복되지 않는 위치에 주어진다.
출력
프로그램의 출력은 표준 출력으로 한다. 영정이가 청소를 해야 한다면 ‘YES’를 청소를 하지 않아도 된다면 ‘NO’를 출력하자.
풀이
Code
import sys
input = sys.stdin.readline
def solution() :
_, _, k = map(int, input().split())
# 1. 리스트 생성
array = [False for _ in range(4)]
# 2.
for _ in range(k) :
x, y = map(int, input().split())
if x % 2 != 0 and y % 2 != 0 and not array[0] : array[0] = True
elif x % 2 != 0 and y % 2 == 0 and not array[1] : array[1] = True
elif x % 2 == 0 and y % 2 != 0 and not array[2]: array[2] = True
elif x % 2 == 0 and y % 2 == 0 and not array[3]: array[3] = True
# 3. 결과 출력
print("YES") if array.count(True) == 4 else print("NO")
if __name__ == "__main__":
solution()
728x90
반응형
'Coding Test > Baekjoon' 카테고리의 다른 글
[Python/BOJ] 17182. 우주 탐사선 (0) | 2023.10.22 |
---|---|
[Python/BOJ] 2631. 줄세우기 (0) | 2023.10.20 |
[Python/BOJ] 2240. 자두나무 (1) | 2023.10.18 |
[Python/BOJ] 26597. 이 사람 왜 이렇게 1122를 좋아함? (1) | 2023.10.17 |
[Python/BOJ] 1535. 안녕 (0) | 2023.10.14 |