R_WH 2020-08-19 19:31 采纳率: 0%
浏览 64

最大回文数疑解题疑问

leetcode 问题
问题:
给定一个包含大写字母和小写字母的字符串,找到通过这些字母构造成的最长的回文串。

在构造过程中,请注意区分大小写。比如 "Aa" 不能当做一个回文字符串。
我先统计每个字符出现的次数,再将偶数次数累加,最后加上最大的奇数次数,代码如下,未通过。想请教一下有何问题?

class Solution {
public:
int longestPalindrome(string s) {
int hash[52]={0},ans=0,alpha=0;
for(int i=0;i {
if(s[i]>='a' && s[i]<='z')
hash[s[i]-'a']++;
else if(s[i]>='A')
hash[s[i]-'A'+26]++;
}

for(int j=0;j {
if(hash[j]%2==0 && hash[j]>0) ans+=hash[j];
else if(hash[j]%2!=0 && hash[j]>=alpha) alpha=hash[j];
}
return ans+alpha;
}
};

  • 写回答

1条回答 默认 最新

  • 关注
    评论

报告相同问题?

悬赏问题

  • ¥15 Windows X86 远线程注入问题解惑
  • ¥15 Vs2022安装时黑框闪退无反应
  • ¥15 嵌入式设备网口down后再up时不能link?
  • ¥15 关于区块链和边缘计算
  • ¥15 做一个简单项目,用Python分析共享单车的数据
  • ¥20 在使用CESM2.2.0模型进行case.submit过程中出现如下错误(关键词-Map)
  • ¥15 有办法改变通过wifi进入的网站的设置吗
  • ¥15 label_studio
  • ¥15 请教如何phython发邮件
  • ¥15 linux系统安装问题