ZOJ 2744 Palindromes
秒杀题,计算回文子串数。
#include <iostream> #include <string> using namespace std; string str; int fun(int strl,int strr) { int num=0; while(strl>=0&&strr<str.length()) { if(str[strl]==str[strr]) { num++; strl--; strr++; } else break; } return num; } int main() { int n,i; while(cin>>str) { n=0; n+=str.length(); for(i=1;i<str.length()-1;i++) { n+=fun(i-1,i); n+=fun(i-1,i+1); } if(str[i]==str[i-1]) n++; cout<<n<<endl; } return 0; }