728x90
📚문제
📝풀이
# 10798번 세로읽기
words = [input() for i in range(5)]
# words[i][j] 할 때 words[0][0], words[1][0], words[2][0]...으로 간다는 걸 생각하고 풀자
for j in range(15): # 문자열 최대길이 (15)
for i in range(5):
if j < len(words[i]):
# 예를 들어 ,문자열 길이(=j) 4일 때, len(words[i])=4라면
# 해당 문자열의 words[i][j]는 출력하지 않음(ex afzz)
# ex AABCDD
# afzz
# 09121
# a8EWg6
# P5h3kx
print(words[i][j], end="")
진짜 어렵다..... 몇시간 동안 붙들다가 구글링해서 해답 코드 봐도 이해가 잘 안 됐다.
브론즈 1인데 이정도라니... 풀면서 현타가 되게 많이왔다.
# 다른 문자열의 길이보다 작은 행의 빈 곳은 출력하지 않기 위한 코드
if j < len(words[i]):
이런 류의 코드 짜는 생각이 잘 나지 않는 것 같다.
익숙해지고 나면 자연스럽게 머릿속에서 떠오르기도 하고 이해도 빨리 되서 잘 풀 수 있겠지......?
우선 나중에 봐도 이해할 수 있게 최대한 쉽게 작성하고 주석도 달아놓았다.
(다른 풀이들은 아직 엄두가 나지 않는다...)
+구글링 하다가 그나마 이해가 좀 되는 2차원 배열 관련 내용을 가져왔다
2차원 배열 출력
#1. 2차원 배열
list_2d = [["A", "B", "C", "D", "E" ],
["1", "2", "3", "4", "5" ],
["a", "b", "c", "d", "e" ]]
#2. 가로출력
# 행 순서(가로)대로 출력하고 싶다면 행 수를 처음 반복문으로 설정!
# 반복문 처리 시 행은 고정, 열이 변경됨
for row in range(3): # 행 수
for col in range(5): # 열 수
print(f'list_2d([{row}][{col}]) = {list_2d[row][col]}', end=" ")
print()
-----------------------------------------------------------------------------------------------------
list_2d([0][0]) = A list_2d([0][1]) = B list_2d([0][2]) = C list_2d([0][3]) = D list_2d([0][4]) = E
list_2d([1][0]) = 1 list_2d([1][1]) = 2 list_2d([1][2]) = 3 list_2d([1][3]) = 4 list_2d([1][4]) = 5
list_2d([2][0]) = a list_2d([2][1]) = b list_2d([2][2]) = c list_2d([2][3]) = d list_2d([2][4]) = e
# 3. 세로출력
# 열 순서(세로)대로 출력하고 싶다면 열 수를 처음 반복문으로 설정!
# 전환행렬 T와 같음
for col in range(5): # 열 수
for row in range(3): # 행 수
print(f'list_2d([{row}][{col}]) = {list_2d[row][col]}', end=" ")
print()
-------------------------------------------------------------------------
list_2d([0][0]) = A list_2d([1][0]) = 1 list_2d([2][0]) = a
list_2d([0][1]) = B list_2d([1][1]) = 2 list_2d([2][1]) = b
list_2d([0][2]) = C list_2d([1][2]) = 3 list_2d([2][2]) = c
list_2d([0][3]) = D list_2d([1][3]) = 4 list_2d([2][3]) = d
list_2d([0][4]) = E list_2d([1][4]) = 5 list_2d([2][4]) = e
728x90
'Python(알고리즘,문제풀이) > BOJ (Bronze V)' 카테고리의 다른 글
1809번 / Moo (0) | 2023.07.10 |
---|---|
2563번 / 색종이 (0) | 2023.07.08 |
2566번 / 최댓값 (0) | 2023.07.06 |
2738번 / 행렬 덧셈 (0) | 2023.07.05 |
25206번 / 너의 평점은 (0) | 2023.07.04 |