Dromicpalin Substrings
题意:求一个字符串有多少字串是类似回文串的,类似即是字符串通过调整顺序能变成回文串
解法:直接求字符串中出现奇数次的字符的个数,n^2暴力
#include <iostream>
using namespace std;
#include <stdio.h>
#include <stdlib.h>
#include <string>
#include <cstring>
int f[50];
int main() {
int tt, cases = 0, l, r, ans, n;
string s;
cin >> tt;
for (cases = 1; cases <= tt; cases++) {
cin >> s;
ans = 0;
n = s.size();
for (int i = 0; i < n; i++) {
memset(f, 0, sizeof(f));
int count = 1;
f[s[i]-'a'] = 1;
ans++;
for (int j = i+1; j < n; j++) {
f[s[j]-'a']++;
if (f[s[j]-'a']%2 == 0) count--;
else count++;
if (count <= 1) ans++;
}
}
cout << "Case " << cases << ": " << ans << endl;
}
}