#include <iostream> #include <cstring> using namespace std; bool prime(int n) { if (n<2) return 0; for (int i = 2; i*i <= n; i++) if (n%i == 0) return 0; return 1; } int main() { char number[14]; cin >> number; int dl = strlen(number); int l = dl - 1; int p = 1; int number1, number2,flaga=0; int f1, f2; for (int i = dl - 1; i > 0; i--) { if (number[i] == '0')continue; number1 = number2 = 0; for (int j = l; j < dl; j++) number1 = number1 * 10 + number[j]-'0'; for (int j = 0; j < l; j++) number2 = number2 * 10 + number[j] - '0'; l--; flaga = f1 = f2=0; if (number1 == 5 || number1 == 2|| number2 == 5 || number2 == 2) { if (i == dl - 1) { f1 = prime(number1); f2 = prime(number2); if (f1 == 1 && f2 == 1)flaga = 1; } else break; } else if (number1%10 == 0 || number1 % 10 == 4 || number1 % 10 == 6 || number1 % 10 == 8)break; else if ((number1 % 10 == 3 || number1 % 10 == 7 || number1 % 10 == 9) && (number2 % 10 == 3 || number2 % 10 == 7 || number2 % 10 == 9)) { f1 = prime(number1); f2 = prime(number2); if (f1 == 1 && f2 == 1)flaga = 1; } if (flaga == 1)break; } if (flaga == 1) cout << "TAK"; else 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 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 | #include <iostream> #include <cstring> using namespace std; bool prime(int n) { if (n<2) return 0; for (int i = 2; i*i <= n; i++) if (n%i == 0) return 0; return 1; } int main() { char number[14]; cin >> number; int dl = strlen(number); int l = dl - 1; int p = 1; int number1, number2,flaga=0; int f1, f2; for (int i = dl - 1; i > 0; i--) { if (number[i] == '0')continue; number1 = number2 = 0; for (int j = l; j < dl; j++) number1 = number1 * 10 + number[j]-'0'; for (int j = 0; j < l; j++) number2 = number2 * 10 + number[j] - '0'; l--; flaga = f1 = f2=0; if (number1 == 5 || number1 == 2|| number2 == 5 || number2 == 2) { if (i == dl - 1) { f1 = prime(number1); f2 = prime(number2); if (f1 == 1 && f2 == 1)flaga = 1; } else break; } else if (number1%10 == 0 || number1 % 10 == 4 || number1 % 10 == 6 || number1 % 10 == 8)break; else if ((number1 % 10 == 3 || number1 % 10 == 7 || number1 % 10 == 9) && (number2 % 10 == 3 || number2 % 10 == 7 || number2 % 10 == 9)) { f1 = prime(number1); f2 = prime(number2); if (f1 == 1 && f2 == 1)flaga = 1; } if (flaga == 1)break; } if (flaga == 1) cout << "TAK"; else cout << "NIE"; return 0; } |