#include<iostream> #include<algorithm> #include<cmath> using namespace std; //char tab[20000010]; long long rzd(long long in){ if(in%1000000007>=0){ return(in%1000000007); }else{ return(-(in%1000000007)); } } int main(){ ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); long long n=0; cin>>n; //cout<<"hell o\n";//DEBUG if(n!=0){ long long a=0; long long b=0; long long licznik=0; char znak; //cin>>znak;//BUG - moje while(licznik<(n/2)){ //cout<<"A";//DEBUG licznik++; cin>>znak; a+=licznik*znak; a=rzd(a); //cout<<znak<<" * "<<licznik<<"\n";//DEBUG } if(n%2==1){ //cout<<"#";//DEBUG licznik++; cin>>znak; } while(licznik<n){ //cout<<"B";//DEBUG licznik++; cin>>znak; b+=(n-licznik+1)*znak; b=rzd(b); //cout<<znak<<" * "<<(n-licznik+1)<<"\n";//DEBUG } //cout<<"a: "<<a<<"\nb: "<<b<<"\n"; if(a==b){ cout<<"TAK\n"; }else{ cout<<"NIE\n"; } //cout<<"\n";//DEBUG }else{ cout<<"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 53 54 55 56 57 58 59 60 61 62 63 64 65 66 | #include<iostream> #include<algorithm> #include<cmath> using namespace std; //char tab[20000010]; long long rzd(long long in){ if(in%1000000007>=0){ return(in%1000000007); }else{ return(-(in%1000000007)); } } int main(){ ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); long long n=0; cin>>n; //cout<<"hell o\n";//DEBUG if(n!=0){ long long a=0; long long b=0; long long licznik=0; char znak; //cin>>znak;//BUG - moje while(licznik<(n/2)){ //cout<<"A";//DEBUG licznik++; cin>>znak; a+=licznik*znak; a=rzd(a); //cout<<znak<<" * "<<licznik<<"\n";//DEBUG } if(n%2==1){ //cout<<"#";//DEBUG licznik++; cin>>znak; } while(licznik<n){ //cout<<"B";//DEBUG licznik++; cin>>znak; b+=(n-licznik+1)*znak; b=rzd(b); //cout<<znak<<" * "<<(n-licznik+1)<<"\n";//DEBUG } //cout<<"a: "<<a<<"\nb: "<<b<<"\n"; if(a==b){ cout<<"TAK\n"; }else{ cout<<"NIE\n"; } //cout<<"\n";//DEBUG }else{ cout<<"NIE\n"; } return(0); } |