码迷,mamicode.com
首页 > 其他好文 > 详细

UVALive6659 - Dromicpalin Substrings

时间:2016-09-28 02:17:18      阅读:210      评论:0      收藏:0      [点我收藏+]

标签:

题意

给一个字符串,找出其子串可化为回文串的个数,子串可以任意改变其顺序。

思路

遍历每一个子串,若子串长度为奇数且只有一个字母的个数为奇数 或 字串长度为偶数且所有字母个数为偶数,则此子串为所求串。

总结

刚开始漏看了题,导致题意读错。

挺简单一道题,比赛时不记得怎样遍历每个子串。

对自己有点信心。加油。

 1 #include <iostream>
 2 #include <cstdio>
 3 #include <cstring>
 4 using namespace std;
 5 int T, kase = 0;
 6 int num[30];
 7 int main()
 8 {
 9     //freopen("in.txt","r",stdin);
10     cin >> T;
11     while(T--) {
12         string s;
13         cin >> s;
14         int len = s.size();
15         int ans = 0;
16         for(int i = 0; i < len; i++) {
17             ans++;
18             memset(num,0,sizeof num);
19             num[s[i]-a]++;
20             int odd = 1;
21             for(int j = i + 1; j < len; j++) {
22                 if((++num[s[j]-a]) % 2) odd++;
23                 else odd--;
24                 if((!odd && (j-i)%2) || (odd == 1&& (j-i)%2 == 0)) ans++;
25             }
26         }
27         cout << "Case " << ++kase << ": " << ans << endl;
28     }
29     return 0;
30 }

 

UVALive6659 - Dromicpalin Substrings

标签:

原文地址:http://www.cnblogs.com/md-zz/p/5914874.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!