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
45
46
47
48
49
50
51
52
53
54
#include <iostream>
#include <algorithm>
#include <string>

using namespace std;

bool is_prime(long long n) {
	for (long long i = 2; i < n; ++i) {
		if (n % i == 0) {
			return false;
		}

		if(i * i > n) {
			return true;
		}
	}
	return true;
}

long long to_int(string s) {
	return stoll(s);
}

bool is_dru(string n) {

	if(n.size() < 2) {
		return false;
	}

	for (int l = 1; l < n.size(); ++l) {
		string a = n.substr(0, l);
		string b = n.substr(l);
		if (b[0] == '0')
			continue;

		long long aa = to_int(a);
		long long bb = to_int(b);

		if (is_prime(aa) && is_prime(bb)) {
			return true;
		}
	}

	return false;
}

int main() {
	ios_base::sync_with_stdio(false);

	string n;
	cin >> n;
	cout << (is_dru(n) ? "TAK" : "NIE") << endl;;
	return 0;
}