Điểm:
100 (p)
Thời gian:
1.0s
Bộ nhớ:
256M
Input:
bàn phím
Output:
màn hình
Số fibonacci là số có dạng:
\(F_1 = 1\)
\(F_2 = 1\)
\(F_N = F_{N-1} + F_{N-2}\)
Nhập vào số nguyên dương \(N\). Kiểm tra xem \(N\) có phải số fibonacci hay không?
Input
- Nhập vào số nguyên dương \(N\) (\(1 \leq N \leq 10^9\)).
Output
- In ra "YES" nếu \(N\) là số fibonacci, in ra "NO" nếu không phải.
Example
Test 1
Input
6
Output
NO
Test 2
Input
3
Output
YES
Bình luận
include<bits/stdc++.h>
define N 1123456
using namespace std;
long long i,k,j,n,f[N],m,d;
int main()
{
ios_base::sync_with_stdio(0);
cin.tie(0);cout.tie(0);
//freopen("a.inp","r",stdin);
//freopen("a.out","w",stdout);
cin>>n;
f[1]=1;f[2]=1;
for(i=3;i<=80;i++)
f[i]=f[i-1]+f[i-2];
for(i=1;i<=80;i++)
if(f[i]==n)
{
cout<<"YES"; return 0;
}
cout<<"NO";
}