| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- 프로그래머스 #조건에 맞게 수열 변환하기 1 #알고리즘 #자바 #Java #코린이 #개발자 #study #취준
- 프로그래머스 #중복된 문자 제거 #알고리즘 #Java #자바 #코린이 #개발자 #study #공부 #성장
- 프로그래머스 #열의 길이를 2의 거듭제곱으로 만들기 #Java #자바 #알고리즘 #코린이 #개발자 #study #공부 #성장
- 프로그래머스 #등차수열의 특정한 항만 더하기 #알고리즘 #Java #자바 #코린이 #개발자 #study #공부
- 파이썬 #input() #sys.stdin.readline() #공부 #study
- 백준 #
- 프로그래머스 #수열과 구간 쿼리 3 #알고리즘 #자바 #Java #코린이 #개발자 #study #공부 #성장
- 프로그래머스 #문자열 묶기 #알고리즘 #자바 #Java #코린이 #개발자 #study #성장
- 프로그래머스 #문자열이 몇 번 등장하는지 세기 #알고리즘 #Java #자바 #코린이 #개발자 #study #공부 #성장
- 코린이 #개발자 #study
- 프로그래머스 #푸드 파이트 대회 #알고리즘 #Java #자바 #코린이 #개발자 #study #취준
- 프로그래머스 #할 일 목록 #알고리즘 #Java #자바 #코린이 #개발자 #study #취준
- 프로그래머스 #2차원으로 만들기 #알고리즘 #Java #자바 #study #코린이 #개발자 #공부 #성장
- 프로그래머스 #부분 문자열 이어 붙여 문자열 만들기 #알고리즘 #Java #자바 #코린이 #개발자 #study #취준
- 프로그래머스 #날짜 비교하기 #알고리즘 #자바 #Java #코린이 #개발자 #study #공부 #성장
- 프로그래머스 #특정 문자열로 끝나는 가장 긴 부분 문자열 찾기 #알고리즘 #자바 #Java #코린이 #개발자 #study #공부 #성장
- 프로그래머스 #합성수 찾기 #알고리즘 #Java #자바 #stiudy #코린이 #개발자 #공부 #성장
- 프로그래머스 #소수 만들기 #알고리즘 #Java #자바 #코린이 #개발자 #study #취준
- 프로그래머스 #배열만들기 5 #알고리즘 #study #Java #코린이 #개발자 #성장 #공부
- 프로그래머스 #조건별로 분류하여 주문상태 출력하기 #MySQL #쿼리문 #알고리즘 #코린이 #개발자 #study #취준
- 프로그래머스 #오랜 기간 보호한 동물(1) #알고리즘 #MySQL #DB #쿼리문 #개발자 #study #성장 #코린이
- 프로그래머스 #배열 회전시키기 #알고리즘 #Java #자바 #코린이 #개발자 #study #취준
- 프로그래머스 #문자열 뒤집기 #알고리즘 #Java #자바 #코린이 #개발자 #study #공부 #성장
- 프로그래머스 #조건에 맞는 사용자와 총 거래금액 조회하기 #알고리즘 #Mysql #DB #쿼리문 #코린이 #개발자 #study #공부 #성장
- 프로그래머스 #k의개수 #자바 #Java #알고리즘 #study #공부 #코린이 #개발자 #성장
- 프로그래머스 #카테고리 별 도서 판매량 집계하기 #알고리즘 #쿼리문 #MySQL #코린이 #개발자 #study #취준
- 프로그래머스 #1로 만들기 #알고리즘 #자바 #Java #코린이 #개발자 #study #공부 #성장
- 프로그래머스 #수열과 구간 쿼리1 #알고리즘 #자바 #Java #코린이 #개발자 #study #공부 #성장
- 프로그래머스 #있었는데요 없었습니다 #DB #MySQL #알고리즘 #쿼리문 #코린이 #개발자 #study #공부 #성장
- 프로그래머스 #세로 읽기 #알고리즘 #개발자 #코린이 #study #성장 #Java #자바
- Today
- Total
luke
[백준] - 피보나치 수 (2747) (Java/자바) 본문
문제 : https://www.acmicpc.net/problem/2747
문제.

풀이.
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
if(n == 0){
System.out.println(0);
return;
}
int a = 0, b = 1;
for(int i = 2; i <= n; i++){
int temp = a + b;
a = b;
b = temp;
}
System.out.println(b);
}
}
이번 문제는 프로그래머스 "피보나치 수" 문제다.
피보나치 수 문제는 공식이 있는 문제다. 사실 필자는 비전공이고 이공계열이 아니라.. 이해하는데 시간이 조금 걸렸지만 이공계열 분들은 이미 알고 계실 거라 생각이 든다. 하지만 필자 같은 비전공 이공계열이 아닌 분들을 위해 간단하게.. 필자가 문제를 풀면서 설명해둔 글이 있으니 밑에 링크를 참고하면 되겠다.
그럼 바로 풀이 해보겠다.
설명글 :
1. 첫 번째 if문을 사용해 준 부분은 n의 값이 0이 들어간다면 당연히 0이 나오기에 0의 조건을 만들어 준다.
2. int a = 0, b = 1이 있는데 이 부분은 피보나치 수 0번째는 0, 1번째는 1이므로 고정 값이라 생각하면 된다.
3. 이제 for문 loop를 돌린다 돌리 때 i값은 2부터 시작한다 이유는 앞에 피보나치 수 0,1번째 역할을 하고 있는 a, b 값이 있기 때문이다.
4. 여기서 중요하다.
temp = a + b는 temp = 0 + 1 (1)
a = 1
b = 1
즉 피보나치 수 2번째의 값은 b의 값인 1이다.
(이미 문제 설명에도 0,1,1,2,3,5,8,13,21~~ 순이고 2번째 값부터는 바로 앞 두 피보나치 수의 합이다.)
5. 이번엔 3번째 값을 봐보겠다.
temp = 1 + 1 (2)
a = 1
b = 2
즉 3번째의 값은 2가 나온다.
이런 식으로 반복돼서 최종적으로 10번째는 55의 값이 나오게 된다. 그럼 끝이다.
'알고리즘문제 > 백준 문제(Java)' 카테고리의 다른 글
| [백준] - 팰린드롬수 (1259) (Java/자바) (0) | 2025.10.01 |
|---|---|
| [백준] - 별 찍기5 (2442) (Java/자바) (0) | 2025.09.30 |
| [백준] - 바구니 뒤집기 (10811) (Java/자바) (1) | 2025.08.03 |
| [백준] - 공 바꾸기 (10813) (Java/자바) (6) | 2025.07.29 |
| [백준] - 공 넣기 (10810) (Java/자바) (6) | 2025.07.27 |