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
#include <iostream>
#include <cmath>
#include <string>
#include <ctime>
#include <cstdlib>
#include <fstream>

using namespace std;
	unsigned long long tab[46];
int main () {
	
	tab[0]=0;
	tab[1]=1;
	for (int i=2;i<46;i++)
	tab[i]=tab[i-1]+tab[i-2];
	int n;
	cin>>n;
	while (n--)
	{
		unsigned long long a;
		cin>>a;
		bool zapis=false;
		for (int i=0;i<46;i++)
		{
			for (int j=1;j<46;j++)
			if (tab[i]*tab[j]==a)
			zapis=true;
		}
		if (zapis==true)
		cout<<"TAK"<<endl;
		else
		cout<<"NIE"<<endl;
	}




return 0;
}