当前位置: 首页 > news >正文

刷题之不相同的字符串(卡码网模拟)

卡码网不同的字符串
在这里插入图片描述

#include<vector> 
#include<string>
#include<iostream>
using namespace std;
int main()
{int n=0;cin>>n;for(int i=0;i<n;i++){string s;cin>>s;vector<int>hash(26,0);for(int j = 0;j < s.size();j++)hash[s[j]-'a']++;//找需要删除成对字母的字母int res1 = 0;//代表删了多少对,也就是有res1个字母需要新增到字符串末尾for(int k = 0;k < 26;k++){if(hash[k] > 1){int temp = hash[k] / 2;hash[k] -= 2 * temp;res1 += temp;}}//找没有字母的字母空位,用于放新增的字母int res2 = 0;for(int k = 0;k < 26;k++){if(hash[k] == 0)res2++;}//如果空位大于要新增的字母数,那么操作数就是删除成对字母的数res1//否则,新加的字母又会产生res1-res2的重复位,还需要再删res1-res2次if(res1 > res2)res1 += res1 - res2;cout << res1 << endl;}}
http://www.lryc.cn/news/343380.html

相关文章:

  • JS-导入导出
  • 【代码随想录——数组篇】
  • 使用 js 类封装项目中音频播放功能的工具方法utils
  • 【超详细】R语言贝叶斯方法在生态环境领域中的高阶技术应用
  • Python 正则表达式 re . 符号
  • 智慧监控 高效运维
  • JAVA每日面试题(一)
  • Java数组创建与使用
  • EMAP如何建数据源
  • 在 Linux 中创建文件
  • 高德地图+HTML+点击事件+自定心信息窗体
  • 流畅的python-学习笔记_协议+继承优缺点
  • 哪个文件加密软件好?迅软加密软件特性解析
  • Ubuntu 根目录扩容
  • 人证比对API接口如何对接
  • NIO(非阻塞I/O)和IO(阻塞I/O)详解
  • 【网络】传输层的特点总结
  • Scala 多版本下载指南
  • 已经安装tensorflow,仍报错No module named ‘tensorflow‘
  • 五一 作业
  • TesseractOCR安装及使用
  • npm安装指定版本,npm删除依赖,卸载依赖
  • 从代码到洞察:使用API接口深入分析商品详情数据
  • 数字旅游以科技创新为核心:推动旅游服务的智能化、精准化、个性化,为游客提供更加贴心、专业、高效的旅游服务
  • HTTP深度指南:协议结构、请求方法与状态码
  • 负载或反向代理服务器如何配置XFF以获取终端真实IP
  • Satellite Communications Symposium(WCSP2022)
  • docker学习笔记5:Docker Compose安装与使用
  • 遇到螺纹连接过程中的软连接,怎么办?——SunTorque智能扭矩系统
  • Baidu Comate——AI时代的软件开发利器