#include<iostream>
using namespace std;
const int MAX=30;
int tab[MAX];
int m=0;
int spr(int x)
{
for(int i=1;i<m;++i)
if(x%tab[i]==0)
for(int j=1;j<m;++j)
if(x/tab[i]==tab[j])
return 1;
return 0;
}
int main()
{
int liczba=0,i=2;
tab[0]=0;tab[1]=1;
while(liczba<31623)
{
tab[i]=tab[i-1]+tab[i-2];
liczba=tab[i];
i++;
m=i;
}
int t,n;
cin>>t;
for(int i=0;i<t;++i)
{
cin>>n;
if(n==0 || spr(n)) cout<<"TAK"<<endl;
else cout<<"NIE"<<endl;
}
return 0;
}
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 | #include<iostream> using namespace std; const int MAX=30; int tab[MAX]; int m=0; int spr(int x) { for(int i=1;i<m;++i) if(x%tab[i]==0) for(int j=1;j<m;++j) if(x/tab[i]==tab[j]) return 1; return 0; } int main() { int liczba=0,i=2; tab[0]=0;tab[1]=1; while(liczba<31623) { tab[i]=tab[i-1]+tab[i-2]; liczba=tab[i]; i++; m=i; } int t,n; cin>>t; for(int i=0;i<t;++i) { cin>>n; if(n==0 || spr(n)) cout<<"TAK"<<endl; else cout<<"NIE"<<endl; } return 0; } |
English