백준(Python) 풀이/수학

백준(Python) 1110번 더하기 사이클 풀이

개발윗미 2021. 9. 28. 13:03

Python으로 구현한 1110번 더하기 사이클 문제 풀이입니다.

 

https://www.acmicpc.net/problem/1110

 

1110번: 더하기 사이클

0보다 크거나 같고, 99보다 작거나 같은 정수가 주어질 때 다음과 같은 연산을 할 수 있다. 먼저 주어진 수가 10보다 작다면 앞에 0을 붙여 두 자리 수로 만들고, 각 자리의 숫자를 더한다. 그 다음,

www.acmicpc.net


n = int(input())
temp = n
count = 0

while True :
  one = temp % 10
  two = temp // 10
  get = (one + two) % 10
  temp = (one * 10) + get
  count += 1
  if temp == n :
    break

print(count)

 

n을 입력받고 while문을 통해 입력받은 수의 일의 자릿수에 10을 곱해 10의 자리로 만들어준뒤 각 자릿수를 더한 값의

 

1의 자릿수를 더해준다. 해당 작업이 끝나면 count를 1씩 증가시키도록 하고 만약 사이클이 발생해 원래 입력받은

 

수와 temp변수가 같다면 반복문을 빠져나와 최종적으로 count 값을 출력한다.