https://www.acmicpc.net/problem/1110
# N이 주어졌을때
# 연산후 다시 N이 될때까지
# 사이클 출력
import sys
N = int(sys.stdin.readline())
def get_the_number_of_cycle(N):
new_N = (N % 10) * 10 + ((N // 10) + (N % 10)) % 10
if new_N == N:
return 1
else:
i = 1
while new_N is not N:
i = i + 1
new_N = (new_N % 10) * 10 + ((new_N // 10) + (new_N % 10)) % 10
return i
get_the_number_of_cycle(N)
print(get_the_number_of_cycle(N))
쉬운 알고리즘을 구현할 때는 최대한 시간단축을 해야한다
알고리즘을 구현하는데 너무 시간이 오래걸린다
다른 방향으로 생각하는 것도 중요하지만, 시간을 절약하는 것도 매우 중요하다.
10분내외로 생각하고 알고리즘 구현하는 것까지 가능하도록 꾸준히 연습해보자.
sys.stdin.readline()
input 메소드와 함께 숫자/문자를 입력받을 수 있는 메소드
기본적으로 문자열 형태로 입력받으며, 정수필요시 형태변환이 필요
a//b
몫
a%b
나머지
코드에 대한 이해가 우선이다. sugar syntax보다는 sugar logic!