#include <cstdio>
#include <cstring>
#include <cmath>
using namespace std;
bool pierwsza(long long u){
if(u == 2) return true;
if(u == 1 || u == 0) return false;
long long s = sqrt(u);
for(long long i = 2; i <= s; i++){
//printf(" testuje %d\n", i);
if(u % i == 0)
return false;
}
return true;
}
int char2int(char c){
return int(c) - int('0');
}
long long str2long(char* str, int begin, int end){
long long w = char2int(str[begin]);
for(int i = begin+1; i <= end; i++){
w *= 10;
w += char2int(str[i]);
}
//printf("Zwracam %d\n", w);
return w;
}
int main() {
char liczba[15];
scanf("%s", liczba);
int len = strlen(liczba);
//printf("%s %d" ,liczba, len);
for(int i = 1; i < len; i++){
if(liczba[i] == '0')
continue;
//printf("Sprawdzam pozycje %d %d\n", i-1, i);
if(pierwsza(str2long(liczba, 0, i-1)) && pierwsza(str2long(liczba, i, len-1))
){
printf("TAK\n");
//printf("TAK %lld %lld\n", str2long(liczba, 0, i-1), str2long(liczba, i, len-1));
return 0;
}
}
printf("NIE\n");
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 | #include <cstdio> #include <cstring> #include <cmath> using namespace std; bool pierwsza(long long u){ if(u == 2) return true; if(u == 1 || u == 0) return false; long long s = sqrt(u); for(long long i = 2; i <= s; i++){ //printf(" testuje %d\n", i); if(u % i == 0) return false; } return true; } int char2int(char c){ return int(c) - int('0'); } long long str2long(char* str, int begin, int end){ long long w = char2int(str[begin]); for(int i = begin+1; i <= end; i++){ w *= 10; w += char2int(str[i]); } //printf("Zwracam %d\n", w); return w; } int main() { char liczba[15]; scanf("%s", liczba); int len = strlen(liczba); //printf("%s %d" ,liczba, len); for(int i = 1; i < len; i++){ if(liczba[i] == '0') continue; //printf("Sprawdzam pozycje %d %d\n", i-1, i); if(pierwsza(str2long(liczba, 0, i-1)) && pierwsza(str2long(liczba, i, len-1)) ){ printf("TAK\n"); //printf("TAK %lld %lld\n", str2long(liczba, 0, i-1), str2long(liczba, i, len-1)); return 0; } } printf("NIE\n"); return 0; } |
English