https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV7GLXqKAWYDFAXB
SW Expert Academy
SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!
swexpertacademy.com
나의 코드
T = int(input())
for t in range(T):
N = int(input())
arr = [list(map(int, input())) for _ in range(N)]
s = e = (N-1)//2
sum_v = 0
for r in range(N): # 행 인덱스
for c in range(s, e+1): # 열 인덱스
sum_v += arr[r][c]
if r < (N-1)//2:
s = s - 1
e = e + 1
else:
s = s + 1
e = e - 1
print(f'#{t+1} {sum_v}')
결과

인덱스를 어떻게 설정해야 할지는 알았지만 어떻게 구현하는지 조금 어려웠던 문제다. 인덱스의 범위가 늘었다가 줄어들어서 요새 배우는 재귀함수로 써보려다가 막막했다...ㅎㅎㅎ 아무튼 조금만 생각해보면 그렇게는 어렵지 않은 것 같지만 나에겐 어려웠던 문제였다.
'스터디 1일 1커밋' 카테고리의 다른 글
| 240229 [SWEA] 배열_3분할 (0) | 2024.03.01 |
|---|---|
| 240228 [SWEA] 11315. 오목 판정 (1) | 2024.02.28 |
| 240226 [BOJ/백준] 15650. N과 M (2) (1) | 2024.02.27 |
| 240225 [BOJ/백준] 24482. 알고리즘 수업- 깊이 우선 탐색 4 (1) | 2024.02.25 |
| 240225 [swea] 1234. 비밀번호 (1) | 2024.02.25 |