#include <cstdio>
#include <algorithm>
using namespace std;
const long long PRIME = 6820076854994569;
const long long BASE = 191;
int main() {
int n;
scanf("%d ", &n);
char c;
long long h1 = 0;
long long h2 = 0;
long long mult = 1;
while (true) {
c = getchar();
if (c < 'a' || c > 'z') break;
h1 = (h1 * BASE + c)%PRIME;
h2 = (h2 + mult * c)%PRIME;
mult = (mult*BASE)%PRIME;
// fprintf(stderr, "%lld\n", mult);
}
if (h1 == h2) {
printf("TAK\n");
} else {
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 | #include <cstdio> #include <algorithm> using namespace std; const long long PRIME = 6820076854994569; const long long BASE = 191; int main() { int n; scanf("%d ", &n); char c; long long h1 = 0; long long h2 = 0; long long mult = 1; while (true) { c = getchar(); if (c < 'a' || c > 'z') break; h1 = (h1 * BASE + c)%PRIME; h2 = (h2 + mult * c)%PRIME; mult = (mult*BASE)%PRIME; // fprintf(stderr, "%lld\n", mult); } if (h1 == h2) { printf("TAK\n"); } else { printf("NIE\n"); } return 0; } |
English