| # | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
|---|---|---|---|---|---|---|---|
| 1194324 | Petrix | Palindromic Partitions (CEOI17_palindromic) | C++20 | 131 ms | 3288 KiB |
#include <iostream>
using namespace std;
#define int long long
#define MOD 1000000007
#define B 31
void solve(){
string s;cin>>s;
int rasp=0,st=0,dr,hash1,hash2,put,i;
dr=s.size()-1;
while(st<=dr){
hash1=hash2=0;put=1;
do{
if(st>=dr){
rasp++;
st++;dr--;
break;
}
hash1=((s[st]-'a'+1)+hash1*B)%MOD;
hash2=((s[dr]-'a'+1)*put+hash2)%MOD;
st++;dr--;
put=(put*B)%MOD;
}while(hash1!=hash2);
if(hash1&& hash1==hash2){
rasp+=2;
}
}
cout<<rasp<<"\n";
}
signed main()
{
int t;
cin>>t;
while(t){
solve();t--;
}
return 0;
}
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
