반응형
https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AWVWgkP6sQ0DFAUO
의석이의 세로로 말해요 문제
2차원 배열로 된 요소들을 가로가 아닌 세로로 읽어 출력하는 문제
100% 내 생각으로 풀었는가?
→ O
리스트 특성을 이용하면 간단히 풀 수 있는 문제
내가 푼 정답코드
T = int(input())
for case in range(1,T+1):
x = [list(input()) for _ in range(5)]
result = [[0]*15 for _ in range(15)] #세로로 읽을거 저장해줄거
print(f'#{case} ',end = '')
for i in range(5):
for j in range(len(x[i])):
result[j][i] = x[i][j] #세로값 저장
for i in range(15):
for j in range(15):
if result[i][j] != 0: #0이 아닌부분 출력
print(result[i][j], end='')
print()
주어진 조건의 문자열의 길이는 15이하 이므로 최대 15까지 받아줄 2차원 리스트를 만들어주고, 그 리스트에 입력 값들을 세로 순서로 받아서 저장해주고 최종적으로 출력을 해주면 된다.
입력값이 전부 같은 길이가 아닌 서로 다른 길이고, 중간에 빈 공간은 띄워줘야 하므로 2차원 리스트로 크게 만들어서 출력하는게 더 나아 보여서 이렇게 출력하여 해결했다.
느낀 점
리스트의 특성과 for 문을 활용하여 풀 수 있는 구현 문제였다. 아이디어만 생각하면 비교적 간단하게 접근하여 풀 수 있었고, 큰 어려움은 없는 쉬운 문제였다.
반응형
'알고리즘 풀이 > SW Expert Academy' 카테고리의 다른 글
[SWEA] 최소합 (python) (0) | 2023.03.28 |
---|---|
[SWEA 1860] 진기의 최고급 붕어빵 (python) (0) | 2023.03.02 |
[SWEA 11315] 오목 판정(python) (0) | 2023.03.02 |
[SWEA 1242] 암호코드 스캔 (python) (0) | 2023.02.28 |
[SWEA] 이진탐색(tree 문제) (python) (0) | 2023.02.22 |
댓글