반응형
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
|
#include <iostream>
#define ll long long
using namespace std;
ll n;
ll a[1000001];
void fibo()
{
a[0] = 0;
a[1] = 1;
for (int num = 2; num <= n; num++)
{
a[num] = (a[num - 1] + a[num - 2]) % 1000000000;
}
}
int main() {
cin >> n;
if (n == -1)//f(-1)만 양수이므로 둘다 1을 출력한다.
{
cout << 1 << '\n' << 1 << '\n';
return 0;
}
else if (n < -1)//n이 음수면 양수로 만들어준뒤 피보나치 수열을 구현.
{
n *= -1;
fibo();
if (n % 2 == 0)
{
cout << -1 << '\n' << a[n];
}
else
{
cout << 1 << '\n' << a[n];
}
return 0;
}
else
{
fibo();
if (a[n] > 0) { cout << 1 << '\n' << a[n] ; }
else if (a[n] == 0) cout << 0 << '\n' << 0 << '\n';
}
}
|
'Algorithm' 카테고리의 다른 글
(C++) - 백준(BOJ) 1330번 : 두 수 비교하기 (0) | 2019.09.16 |
---|---|
(C++) - 백준(BOJ) 11054번 : 가장 긴 바이토닉 부분 수열 (0) | 2019.09.11 |
(C++) - 백준(BOJ) 2810번 : 컵홀더 (0) | 2019.09.09 |
(C++) - 백준(BOJ) 1748번 : 수 이어 쓰기 1 (0) | 2019.09.09 |
(C++) - 백준(BOJ) 4153번 : 직각삼각형 (0) | 2019.09.09 |