Notice
Recent Posts
Recent Comments
Link
«   2025/02   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
Archives
Today
Total
관리 메뉴

TitanYang's Programming

[JAVA 기본 알고리즘] 백준 알고리즘 2747번 / 피보나치 수 본문

JAVA

[JAVA 기본 알고리즘] 백준 알고리즘 2747번 / 피보나치 수

타이탄양 2017. 8. 22. 14:28



이 문제는 피보나치 수입니다. 기본적인 피보나치 수열에 관한 문제인데요, 다만 재귀함수형식으로 풀었을때 시간


초과가 나게 되어있는듯합니다. 따라서 재귀 이외에 다른 방법으로 풀어야겠습니다. 


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
import java.util.Scanner;
 
public class ekdmaanswp {
 
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Scanner sc= new Scanner(System.in);
        int n=sc.nextInt();
        int a=0,b=1;
        if(n==0) {
            System.out.println(a);
            return;
        }if(n==1) {
            System.out.println(b);
            return;
        }
        for(int i=0;i<n-1;i++) {
            if(b>a) {
                a=a+b;
            }else {
                b=b+a;
            }
        }
        if(b>a) System.out.println(b);
        else System.out.println(a);
        
    }
 
}
 
cs


입력에 1,2가 들어가지 않는다는 것을 알았더라면 if문 2개는 없었을 수도 있었을텐데요.. ㅠ 아쉽습니다.