피보나치수(재귀함수x)

이준경·2021년 5월 19일
0

<나의풀이>

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
class Solution {
    public int solution(int n) {
        int answer =0;
        int f1 =1;
        int f2 =1;
        
        if(n<3)
            return 1;
        for(int i=2; i<n; i++){
            answer=(f2+f1)%1234567;
            f1=f2;
            f2=answer;
            
        }
        return answer;
    }
 
}
cs

재귀함수로 할 경우 시간 초과
1. n이 3이상일때 answer에 f2+f1하고 %1234567의 나머지를 대입
2. f1에 f2대입 f2에 answer대입.
3. 반복 후 answer반환

0개의 댓글

관련 채용 정보