Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 시간 복잡도
- 풀이
- 백준
- AVL 시간 복잡도
- ㅣ풀이
- 해시구현
- 버킷 정렬
- 해시 구현
- 원판 돌리기
- Stack 이란
- heap
- 스택의 특징
- qorwns
- 백준 1406
- C/C++ 구현
- 자료구조
- 백준 17779
- 1764
- 구현
- c#
- 게리멘더링2
- 5397
- 별 찍기 10
- 백준 17822
- dfs
- 백준 5397
- 조세퍼스 순열
- 백준 17471
- 백준 2447
- 백준 1158
Archives
- Today
- Total
홍시홍의 프로그래밍
[백준 1003] 피보나치 함수 본문
요구사항
피보나치 수열을 구현하였을때, 0과 1의 출현 횟수 구하기
풀이
바텀업 방식으로
d0, d1 배열을 잡아서 d0의 출현 횟수, d1의 출현 횟수를 구한다
d0는 d0만의 피보나치 함수이고
d1은 d1만의 피보나치 함수이다.
#pragma warning(disable:4996)
#include <vector>
#include <queue>
#include <cstring>
#include <cstdio>
#include <algorithm>
#include <iostream>
#include <functional>
#include <algorithm>
using namespace std;
int d0[51];
int d1[51];
int main() {
d0[0] = 1;
d0[1] = 0;
d1[0] = 0;
d1[1] = 1;
int t;
for (int i = 2; i <= 41; i++) {
d0[i] = d0[i - 1] + d0[i - 2];
d1[i] = d1[i - 1] + d1[i - 2];
}
scanf("%d", &t);
for (int tc = 1; tc <= t; tc++) {
int x;
scanf("%d", &x);
printf("%d %d\n", d0[x], d1[x]);
}
}
'알고리즘 문제풀이 > 백준' 카테고리의 다른 글
[백준 2294] 동전 2 (0) | 2020.03.17 |
---|---|
[백준 9465] 스티커 (0) | 2020.03.16 |
[백준 1463] 1로 만들기 (0) | 2020.03.16 |
[백준 9370] 미확인 도착지 (0) | 2020.03.16 |
[백준 5719] 거의 최단 경로 (0) | 2020.03.16 |
Comments