문제
알고리즘
- 두 정수를 더할 때는 int로 더한다.
- 두 정수를 붙일 때는 str으로 붙인다.
코드
import sys
n = str(sys.stdin.readline())
res = []
cnt = 0
print(n)
# 입력받은 정수가 두자릿수이면 1의 자리 수의 0을 추가한다.
if len(n) == 2:
n = "0" + n
while True:
# 새로운 수를 리스트에 추가한다.
res.append(n)
# 두 정수를 더한다.
temp = int(n[0]) + int(n[1])
# 두 정수중 오른쪽 자리 수와 더한 수의 오른쪽 자리 수를 붙인다.
n = n[1] + str(temp)[-1]
# 리스트에 똑같은 수가 있으면 반복을 멈춘다.
if n in res:
break
# 사이클 횟수 카운트
cnt += 1
print(cnt)
github
'CodingTest > Baekjoon' 카테고리의 다른 글
[baekjoon] 백준 10799번(파이썬): 쇠막대기 (0) | 2021.09.08 |
---|---|
[baekjoon] 백준 10951번(파이썬): A+B - 4 (0) | 2021.09.07 |
[baekjoon] 백준 17413번(파이썬): 단어 뒤집기 2 (0) | 2021.09.07 |
[baekjoon] 백준 10866번(파이썬): 덱 (0) | 2021.09.06 |
[baekjoon] 백준 1158번(파이썬): 요세푸스 문제 (0) | 2021.09.06 |