SW Expert Academy
SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!
swexpertacademy.com
📌 작성한 코드
for test in range(1,11):
n = int(input())
arr = [[x for x in input().split()] for _ in range(n)]
turn = list(map(list,zip(*arr)))
temp = []
ans = 0
for i in turn:
temp.append("".join(i).replace('0',''))
for i in temp:
ans += i.count('12')
print(f'#{test} {ans}')
📌 풀이
1. 배열의 세로줄만 추출하기
turn = list(map(list,zip(*arr)))
2. 0을 제거하고 1과 2로만 이루어진 문자열로 만들기
for i in turn:
temp.append("".join(i).replace('0',''))
3. '12' 문자열을 찾기(s극와 n극에 이끌리는 자석들이 서로 부딪혀 교착상태가 되면 12가 붙어있게 됨)
for i in temp:
ans += i.count('12')

'알고리즘 > SWEA' 카테고리의 다른 글
| [Python] SWEA D3 : 5215 - 햄버거 다이어트 (0) | 2023.11.11 |
|---|---|
| [Python] SWEA D3 : 1244 - [S/W 문제해결 응용] 2일차 - 최대 상금 (0) | 2023.11.11 |
| [Python] SWEA D3 : 1209 - [S/W 문제해결 기본] 2일차 - Sum (0) | 2023.11.08 |
| [Python] SWEA D3 : 1289 - 원재의 메모리 복구하기 (0) | 2023.11.08 |
| [Python] SWEA D3 : 1215 - [S/W 문제해결 기본] 3일차 - 회문1 (0) | 2023.11.08 |