#include <iostream>
#include <stdio.h>
#include <cstdlib>
using namespace std;
bool checkPrime(int number);
int main() {
string sNumber;
cin >> sNumber;
for(int i = 1 ; i < sNumber.length(); i++) {
if(sNumber.c_str()[i] != '0') {
unsigned long long i1 = strtoul(sNumber.substr(0, i).c_str(), NULL, 10);
unsigned long long i2 = strtoul(sNumber.substr(i, sNumber.length() - 1).c_str(), NULL, 10);
if(checkPrime(i1) && checkPrime(i2)) {
cout << "TAK";
return 0;
}
}
}
cout << "NIE";
return 0;
}
bool checkPrime(int number) {
if(number == 1) return false;
if(number == 2) return true;
if(number%2 == 0) return false;
int i = 3;
while(i < number) {
if(number%i == 0) return false;
i++;
}
return true;
}
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 | #include <iostream> #include <stdio.h> #include <cstdlib> using namespace std; bool checkPrime(int number); int main() { string sNumber; cin >> sNumber; for(int i = 1 ; i < sNumber.length(); i++) { if(sNumber.c_str()[i] != '0') { unsigned long long i1 = strtoul(sNumber.substr(0, i).c_str(), NULL, 10); unsigned long long i2 = strtoul(sNumber.substr(i, sNumber.length() - 1).c_str(), NULL, 10); if(checkPrime(i1) && checkPrime(i2)) { cout << "TAK"; return 0; } } } cout << "NIE"; return 0; } bool checkPrime(int number) { if(number == 1) return false; if(number == 2) return true; if(number%2 == 0) return false; int i = 3; while(i < number) { if(number%i == 0) return false; i++; } return true; } |
English