11721
처음 풀이
mytext = input()
x = len(mytext) // 10
y = len(mytext) % 10
for i in range(x):
print(mytext[0+i*10:10+i*10])
print(mytext[x*10:])
하지만 이후 좀 더 공부해보니 나머지(y)가 0인 경우가 있을 수 있음. 따라서 if y로 한 번 더 처리해줘야 함
mytext = input()
x = len(mytext) // 10
y = len(mytext) % 10
for i in range(x):
print(mytext[0+i*10:10+i*10])
if y:
print(mytext[x*10:])
추가
아래와 같이 range를 활용해 푸는 방법도 있었음.
n = input()
for i in range(0, len(n), 10):
print(n[1:1+10])
원래 문자열의 길이보다 더 큰 범위를 설정하더라도 오류가 나지 않고 graceful하게 처리해주기 때문에 가능한 것 같음
my_string = "Hello, World!"
substring = my_string[5:20]
print(substring)
# 출력 - , World!
2742
파이썬의 reversed를 사용하여 거꾸로 출력하는 것도 가능함
n = int(input())
for i in reversed(range(1, n+1)):
print(i)
reversed는 리스트, 튜플, 문자열 등 여러 자료구조를 받을 수 있음. 반복자 타입을 활용하기 때문에 메모리 사용 측면에서 좀 더 이점이 있다고 함. 아래 글 참고해보면 좀 더 자세히 알 수 있음! (daleseo님과 inpadev님의 블로그는 항상 볼때마다 신기함... 어떻게 모든 내용이 다 있지? 이런 느낌)
https://www.daleseo.com/python-reversed/
'CS > 알고리즘' 카테고리의 다른 글
백준 1924 (0) | 2023.09.25 |
---|---|
코드업 파이썬 100제 - 6027, 6028, 6029, 6030, 6031 (0) | 2023.09.25 |
백준 11719 & 11720 (0) | 2023.09.21 |
백준 11718 - input(), sys.stdin.readline(), sys.stdin.readlines() (0) | 2023.09.20 |
백준 10951, 10952 (python) (1) | 2023.09.19 |