c_cpp 可以换一根绳子形成一个回文吗?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c_cpp 可以换一根绳子形成一个回文吗?相关的知识,希望对你有一定的参考价值。
bool can_form_palindrome(string s) {
if(s.empty()) return false;
int hash[256] = {0};
for(auto c : s) {
hash[c]++;
}
int odd_num = 0;
for(int i=0; i<256; i++) {
if(hash[i] % 2 != 0) {
odd_num++;
if(odd_num > 1) return false;
}
}
return true;
}
// solution 2
bool can_form_palindrome(string s) {
if(s.empty()) return false;
sort(s.begin(), s.end());
int odd_count = 0;
int char_count = 1;
for(int i=1; i<s.size(); i++) {
if(s[i] == s[i-1])
char_count++;
else {
if(char_count % 2 != 0) {
odd_count++;
if(odd_count > 1) return false;
}
char_count = 1;
}
}
return true;
}
以上是关于c_cpp 可以换一根绳子形成一个回文吗?的主要内容,如果未能解决你的问题,请参考以下文章
用皮筋怎么编绳
金融量化电话口试-智力题
PHP 清理一根绳子
PHP Camel Case一根绳子
我怎样才能把一根绳子分成不同的部分,然后把每一块分成一层?
在 td 标记元素中强制自动换行 [重复]