코딩 테스트 준비

반복 순열 - 실버 4

개발쉐발 2023. 1. 5. 17:06
728x90
반응형
A, P = map(int, input().split())
dp = [A]
same = 0

while same == 0:
  num = 0
  for j in str(dp[-1]):
    num += int(j)**P
  if num in dp:
    same = num
    break
  dp.append(num)

print(dp.index(same))

간단하게 스택의 가장 위 값을 문자열로 변경하고 각 자리 수마다 p만큼 제곱해준 값을 더한 변수를 스택에 추가한다.

만약 동일한 값이 이미 스택에 있다면 반복문을 멈추고 그 값의 인덱스를 찾아주면 해결된다.

728x90
반응형