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
/*
n jest sklejeniem 2 liczb pierwszych

limity:
1<=n<=1e13<2^44
*/

#include <stdio.h>

int isprime(long long a)
{
  long long q;
  if (a<2) return 0;
  if (a>2 && a%2==0) return 0;
  for (q=3; q*q<=a; q+=2) if (a%q==0) return 0;
  return 1;
}

int main()
{
  long long n, a, b, q;

  scanf("%lld", &n);
  for (q=1, a=n/10, b=n%10; a>0; q*=10, a/=10, b=n%(10*q))
  if (b>=q)
  {
    if (isprime(a) && isprime(b))
    {
      puts("TAK");
      return 0;
    }
    if (b%2==0 || b%5==0) break;
  }
  puts("NIE");
  return 0;
}