본문 바로가기
프로그래머스/Python

[프로그래머스] 피보나치 수 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트

by 우당탕탕 개발자 2023. 7. 6.
728x90
반응형

 

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

1. 문제 설명

2. 풀이과정

  1. 초기 피보나치 수 0번째 값과 1번째 값을 저장한 리스트를 생성한다. F = [0, 1]
  2. 피보나치 수를 만들 위치 값을 가진 변수를 생성하고 다음 위치인 2로 초기화한다. i = 2
  3. 원하는 지점에서 멈추기 위해 반복문을 활용한다. while (True)
  4. 피보나치 수 리스트에 다음 값(이전 값과 그전 값을 더한 값)을 추가한다. F.append(F[i - 2] + F[i - 1])
  5. 만약 피보나치 수 위치가 입력받은 값과 동일하다면 if (i == n)
  6. 해당 피보나치 수를 1234567로 나눈 값을 정답 변수에 대입한다. answer = F[n] % 1234567
  7. 입력받은 위치의 피보나치 수를 찾았으므로 반복을 종료한다. break
  8. 반복이 종료되지 않았다면 피보나치 수 위치를 1 증가시킨다. i += 1
반응형

3. 소스코드

def solution(n):
    answer = 0
    
    F = [0, 1]
    
    i = 2
    while (True):
        F.append(F[i - 2] + F[i - 1])
        
        if (i == n):
            answer = F[n] % 1234567
            break
            
        i += 1
    
    return answer
728x90
반응형