#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;
}
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; } |
English