코딩 테스트/Baekjoon

B1 10798. 세로읽기

  • -
728x90
반응형

문제 보기 :  10798번: 세로읽기 (acmicpc.net)


문제

  • 정답률 : 48.344%


작성 코드

a = [input() for i in range(5)]

#가장 긴 문자열 길이 찾기
max_length = 0
for h in range(5):
    if max_length < len(a[h]):
        max_length = len(a[h])

# 문자열별로 j번째 원소 뽑아내기
for j in range(max_length):
    for k in range(5): 
        if j+1 > len(a[k]):
            pass 
        else:
            print(a[k][j], end='')

풀이

 

input으로 받은 문자열을 문자열의 길이를 기준으로 정렬을 할 수도 없고..

각 문자열의 길이를 기준으로 이중 for문을 써야한다는 점에서 시간 복잡도도 고려해야했기에 더 헷갈렸다.

무엇보다도 시간을 많이 잡아먹었던 부분은 ( if j+1 > len(a[k]): ) 부분이었다. "+1"을 떠올리지 못해서 ..ㅋㅋ ㅠㅠ 엄청 오래 걸렸다

320x100
728x90

'코딩 테스트 > Baekjoon' 카테고리의 다른 글

S1 2178. 미로 탐색  (0) 2024.10.09
S2 1260. DFS와 BFS  (0) 2024.10.09
B3 2566. 최댓값  (0) 2024.08.17
B3 2444. 별 찍기  (1) 2024.07.22
B1 1157. 단어 공부  (0) 2024.07.18
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.