반응형
백준 BAEKJOON 31628번 가지 한 두름 주세요 [PYTHON/파이썬]
<문제 출처> (BRONZE Ⅲ)
https://www.acmicpc.net/problem/31628
<풀이>
가로로 연속된 10개의 칸 혹은 세로로 연속된 10개의 칸에
가지의 색이 같은지 확인하는 문제이다.
총 100개의 가지의 색이 주어진 2차원 배열을 입력으로 받고
zip 함수를 활용하여 행과 열을 바꾼 2차원 배열을 만들었다.
(zip 함수는 sorzzzzy 님의 블로그를 참고하였다.)
가지의 색이 공통된지 확인하기 위해 나는 set 집합을 이용하였다.
가로 10개의 칸이 모두 색이 같다면 길이가 1인 결과가 나온다.
기존의 2차원 배열과 행과 열을 바꾼 2차원 배열에
연속된 가지의 색이 10개인지 확인하기 위해 따로 함수를 만들었다. (아래 코드의 setEggplant 함수)
2개의 배열 속에 10개의 칸에 연속된 색인 가지가 하나라도 있다면 1을 출력
그렇지 않다면 0을 출력하여서 답을 도출해냈다.
<코드>
def setEggplant(x):
for e in x:
check = set(e)
if len(check) == 1:
return True
eggplant1 = [input().split() for _ in range(10)]
eggplant2 = list(zip(*eggplant1))
result1, result2 = setEggplant(eggplant1), setEggplant(eggplant2)
if result1 or result2:
print(1)
else:
print(0)
반응형
'ALGORITHM > PYTHON' 카테고리의 다른 글
백준 BAEKJOON 30454번 얼룩말을 찾아라! [PYTHON/파이썬] (0) | 2024.03.21 |
---|---|
백준 BAEKJOON 12756번 고급 여관 [PYTHON/파이썬] (0) | 2024.03.20 |
백준 BAEKJOON 20499번 Darius님 한타 안 함? [PYTHON/파이썬] (0) | 2024.03.17 |
백준 BAEKJOON 11944번 NN [PYTHON/파이썬] (1) | 2024.03.16 |
백준 BAEKJOON 11006번 남욱이의 닭장 [PYTHON/파이썬] (0) | 2024.03.13 |