// // main.cpp // pa2017probne // // Created by Marcin Wierzbicki on 14.11.2017. // #include <iostream> #include <cmath> using namespace std; string l,sa,sb; long long stll(string a) { long long l=0,mn=1; for (string::reverse_iterator it=a.rbegin(); it!=a.rend(); ++it) { l=l+(mn*(long long)(*it-48)); mn=mn*(long long)(10); } return l; } bool isPrime(long long a) { bool sol=1; for (int i=2; i<=sqrt(a); i++) { if (a%i==0) { sol=0; } } return sol; } int main() { ios_base::sync_with_stdio(0); cin >> l; sa=""; sb=l; for (int i=0; i<l.size()-1; i++) { sa+=l[i]; sb.erase(sb.begin()); if (sb[0]!='0') { if (isPrime(stll(sa)) && isPrime(stll(sb))) { cout << "TAK"; return 0; } } } cout << "NIE"; 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 | // // main.cpp // pa2017probne // // Created by Marcin Wierzbicki on 14.11.2017. // #include <iostream> #include <cmath> using namespace std; string l,sa,sb; long long stll(string a) { long long l=0,mn=1; for (string::reverse_iterator it=a.rbegin(); it!=a.rend(); ++it) { l=l+(mn*(long long)(*it-48)); mn=mn*(long long)(10); } return l; } bool isPrime(long long a) { bool sol=1; for (int i=2; i<=sqrt(a); i++) { if (a%i==0) { sol=0; } } return sol; } int main() { ios_base::sync_with_stdio(0); cin >> l; sa=""; sb=l; for (int i=0; i<l.size()-1; i++) { sa+=l[i]; sb.erase(sb.begin()); if (sb[0]!='0') { if (isPrime(stll(sa)) && isPrime(stll(sb))) { cout << "TAK"; return 0; } } } cout << "NIE"; return 0; } |