본문 바로가기
코딩테스트/프로그래머스

[프로그래머스 level2][C언어] 피보나치 수열

by 신도리아 2022. 10. 6.

문제 출처)

https://school.programmers.co.kr/learn/courses/30/lessons/12945

 

프로그래머스

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

programmers.co.kr

 

아이디어)

문제의 핵심은 마지막 result 값에만 %1234567 으로 나머지를 구해주는 것이 아닌,

매 수열 값마다 (~ %1234567의 나머지 값)으로 배치를 해줘야 하는 것

 

코드)

#include <stdio.h>
#include <stdbool.h>
#include <stdlib.h>

int solution(int n) {
    int sum=0;
    int n1=0;
    int n2=1;
    
    for(int i=2;i<=n;i++){
        sum = (n1+n2) % 1234567;
        n1 = n2;
        n2 = sum;
    }
    return sum;
}