격자판 회문수
문제 정보는 인프런의 파이썬 알고리즘 문제풀이 코딩테스트에 있습니다!
문제풀이
a = [list(map(int, input().split())) for _ in range(7)]
cnt = 0
# 가로 0~4, 1~5, 2~6만, 세로는 모두 돌기
for i in range(3):
for j in range(7):
# 0, 1, 2, 3, 4 slice하기
tmp = a[j][i:i+5]
if (tmp==tmp[::-1]):
cnt+=1
# 세로 배열은 slice가 불가능
for k in range(2):
# 세로의 첫번째 값과 5번째 값을 비교, 2번쨰값과 4번째 값을 비교
if board[i+k][j]!=board[i+5-k-1][j]:
break
else:
cnt+=1
print(cnt)
이 모든걸 for문으로 해결하니 놀라울뿐….
4중 for문 처음본 것 같다
4중 for문은 2차원배열로 가로 세로 겨우 확인하는 것을 보면 왜 4중 for문이 필요한지 단박에 이해될 듯!