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

1112 Stucked Keyboard

#include<iostream>
#include<map>
#include<set>
#include<string>
using namespace std;
bool sureNobroken[256];
int main(){
int k,cnt=1;
cin>>k;//字符出现次数的阈值
string s;
cin>>s;

map<char,bool>m;//记录是否为坏键
set<char>printed;//记录已经输出的字符

char pre='#';
s=s+'#';
//第一次遍历,标记可能坏掉的键
for(int i=0;i<s.length();i++){
if(s[i]==pre){
cnt++;
}else{
//如果连续出现的不是k的倍数,说明不是坏键
if(cnt%k!=0){
sureNobroken[pre]=true;
}
cnt=1;
}
//如果当前出现的字符数是k的倍数,表示其为坏键
if(i!=s.length()-1){
m[s[i]]=(cnt%k==0);
}
pre=s[i];//更新前一个字符
}
//第二次遍历,修正标记
for(int i=0;i<s.length()-1;i++){
if(sureNobroken[s[i]]){
m[s[i]]=false;
}
}
//输出所有坏键
for(int i=0;i<s.length()-1;i++){
if(m[s[i]]&&printed.find(s[i])==printed.end()){
cout<<s[i];
printed.insert(s[i]);
}
}
cout<<endl;
//输出修正后的字符
for(int i=0;i<s.length()-1;i++){
cout<<s[i];
if(m[s[i]]){
i=i+k-1;
}
}
return 0;
}

http://www.gsyq.cn/news/99808.html

相关文章:

  • 计及源荷不确定性的综合能源生产单元运行调度与容量配置优化研究附Matlab代码
  • 计算轴向磁铁和环状磁铁的磁场附Matlab代码
  • IDEA 中 maven 图标失踪解决措施
  • (新卷,200分)- 字符串比较(Java JS Python)
  • 爱站一键化权重查询v2.0
  • 剪映Python自动化:JianYingApi让视频剪辑更智能
  • 某PC游戏残血ACE反作弊ring3下的绕过分析
  • 考虑电能交互的冷热电区域多微网系统双层多场景协同优化配置附Matlab代码
  • 考虑阶梯式碳交易与供需灵活双响应的综合能源系统优化调度附Matlab代码
  • 飞书文档一键导出神器:25分钟搞定700份文档迁移的终极方案
  • 2025年新手入门鱼竿测评:新手鱼竿推荐,新手鱼竿推荐性价比高 - 品牌2026
  • 血赚不亏!Java 17 9 个炸裂特性,程序员看完直呼:太香了!
  • 强化学习Q-learning求最优策略
  • ComfyUI文生图工作流详解
  • c#教程实战应用案例分享
  • 3分钟搞定网盘限速:无需会员的高速下载加速方案
  • 【开题答辩全过程】以 基于Spring Boot的香飘万里外卖平台为例,包含答辩的问题和答案
  • 实战LLaMA2-7B指令微调
  • 优化Sigmoid函数计算:提升AI模型训练速度
  • 计算机毕业设计springboot餐厅预定系统 基于SpringBoot的智慧餐饮订座平台 SpringBoot驱动的线上餐厅席位预约管理系统
  • Java 八大排序算法详解(从入门到面试)
  • AI如何革新漏洞扫描工具的开发流程
  • 深入解析 DNS:互联网的隐形神经系统
  • 数字色彩的骨架:计算机如何理解颜色
  • AI大模型赋能消费升级:新机遇与新路径
  • Ascend C算子精度调试全攻略 - 从Print函数到结构化数据比对
  • Web3.js钱包与账户管理
  • 【开题答辩全过程】以 基于微信小程序的失物认领系统为例,包含答辩的问题和答案
  • 《线性代数应该这样学》学习笔记 | 第一章 向量空间
  • 光电设计大赛-基于树莓派4B的YOLOv5-Lite目标检测的移植与部署