制造回文串这个题,其实只要统计出现此时为奇数的字符的个数就可以,出现次数为偶数的字符
可以直接放在出现次数为奇数的字符的两侧。如果统计结果中出现次数为奇数的字符个数为0,
则输出字符串的size,这种情况对应把所有字符拆分为单个字符的情况,否则输出统计结果。
#include <iostream>
#include <vector>
#include <string.h>
using namespace std;
int main(){
int i = 0;
string s;
while(cin >> s){
vector<int> count(256, 0);
for(i = 0;i < s.size();i++){
count[s[i]]++;
}
int oddNum = 0;
for(i = 0;i < count.size();i++){
if(count[i] % 2 == 1)
oddNum++;
}
if(oddNum == 0)
cout << s.size() << endl;
else
cout << oddNum << endl;
}
return 0;
}