2331 - 반복 수열

LeeKyoungChang·2022년 2월 19일
0

Algorithm

목록 보기
50/203
post-thumbnail

📚 2331 - 반복 수열

반복수열

 

풀이

  • 반복 수열이 되는 위치를 찾아야 한다. (그 위치전 인덱스가 마지막으로 반복되지 않는 구간이 된다.)
  • 반복된 구간이 보일 때, 배열에 넣지 않고 나간 후, 처음으로 이 반복된 값이 들어온 인덱스를 출력해준다.(반복 시작점의 인덱스가 반복되는 부분을 제외했을 때의 인덱스이다.)

 

소스

from sys import stdin as s

a, p = map(int, s.readline().split())


cur_value = [a]

while True:
    cnt = 0

    for cur_data in str(cur_value[-1]):
        cnt += int(cur_data) ** p

    if cnt in cur_value:
        break

    cur_value.append(cnt)

print(cur_value.index(cnt))

 

채점 결과
스크린샷 2022-02-20 오전 1 28 07

 


참고

profile
"야, (오류 만났어?) 너두 (해결) 할 수 있어"

0개의 댓글