백준 1855 암호

choiyongheon·2023년 3월 14일

주어진 문자열을 n크기의 2차원 배열에 ㄹ자로 채우고 읽을때는 열부터 읽으면 되는 문제이다.

n = int(input())
s = input()
lis = []
st = ""
flag = 0

for i in range(0, len(s), n):
    if flag == 0:
        lis.append(s[i:i+n])
        flag = 1
    else:
        lis.append(s[i:i+n][::-1])
        flag = 0

flag = 0

for i in range(n):
    for j in range(len(lis)):
        st += lis[j][i]

print(st)

ㄹ자로 배열에 담기위해 n만큼 slice를 해주며 flag를 통해 꺾는 구간을 알려준다. flag = 1일 경우 꺾어야 하므로 [::1]을 해준다면 역순으로 채울 수 있다.

profile
주니어 백엔드 개발자

0개의 댓글