【题目链接】

ybt 1148:连续出现的字符
OpenJudge NOI 1.9 11:连续出现的字符

【题目考点】

1. 字符串处理

2. 数值统计

【题解代码】

解法1:比较相邻字符

#include<bits/stdc++.h>
using namespace std;
int main()
{int k, cn = 1, len;//cn:字符连续出现的次数 cin>>k;char s[2505];cin>>s;if(k == 1)//如果k为1,为特例。 {cout<<s[0];//直接输出第0个字符,即为连续出现1次的字符 return 0;}len = strlen(s);for(int i = 1; i < len; ++i){if(s[i] == s[i-1])//如果现在看的字符和前一个字符相同 {cn++;//那么字符连续出现,连续出现的次数加1 if(cn >= k)//如果已经连续出现k次 {cout<<s[i];//输出这个字符 return 0;//结束程序 }}else//如果当前字符与前一个字符不同cn = 1;//那么重新开始计数,当前字符连续出现1次 }cout<<"No";//如果没有能达到连续出现k次的情况,输出No return 0;
}

解法2:设一个变量,用于表示当前关注的连续字符

#include<bits/stdc++.h>
using namespace std;
int main()
{int k, ct, len; cin>>k;char s[2505], c;//c:当前关注的,在连续出现的字符 cin>>s;c = '\0';//c的初始值如果是'\0',则一定不会与s[0]相同,因而第一次循环时会执行else下的语句段,为c与ct赋初值 len = strlen(s);for(int i = 0; i < len; ++i){if(s[i] == c)//如果当前看的字符s[i]与关注的字符c相同 ct++;//计数加1 else//如果看到与c不同的字符(第一次循环,i为0时,也会走这里) {c = s[i];//改变关注的字符为s[i] ct = 1;//重新计数 }if(ct >= k)//如果已经连续出现k次 {cout<<c;return 0;}}cout<<"No";return 0;
}

信息学奥赛一本通 1148:连续出现的字符 | OpenJudge NOI 1.9 11相关推荐

  1. 信息学奥赛一本通 1067:整数的个数 | OpenJudge NOI 1.5 11

    [题目链接] ybt 1067:整数的个数 OpenJudge NOI 1.5 11:整数的个数 [题目考点] 1. 循环统计 2. (扩展)散列表 [题解代码] 解法1:用if语句 #include ...

  2. 信息学奥赛一本通 1227:Ride to Office | OpenJudge NOI 4.6 2404:Ride to Office

    [题目链接] ybt 1227:Ride to Office OpenJudge NOI 4.6 2404:Ride to Office 原题是英文题,虽说两题题意相同,但一本通网站没有对该问题进行直 ...

  3. 信息学奥赛一本通 1223:An Easy Problem | OpenJudge NOI 4.6 1455:An Easy Problem

    [题目链接] ybt 1223:An Easy Problem OpenJudge NOI 4.6 1455:An Easy Problem [题目考点] 1. 数制 2. 枚举 [解题思路] 解法1 ...

  4. 信息学奥赛一本通 1168:大整数加法 | OpenJudge NOI 1.6 10:大整数加法

    [题目链接] ybt 1168:大整数加法 OpenJudge NOI 1.6 10:大整数加法 [题目考点] 1. 高精度 考察:高精加高精 高精度计算讲解 [解题思路] 注意:输入可能有多余的前导 ...

  5. 信息学奥赛一本通 1141:删除单词后缀 | OpenJudge NOI 1.7 20

    [题目链接] ybt 1141:删除单词后缀 OpenJudge NOI 1.7 20:删除单词后缀 [题目考点] 1. 字符串处理 2. string类成员函数 取子串:substr(起始位置, 子 ...

  6. 信息学奥赛一本通 1135:配对碱基链 | OpenJudge NOI 1.7 07

    [题目链接] ybt 1135:配对碱基链 OpenJudge NOI 1.7 07:配对碱基链 [题目考点] 1. 字符串处理 字符处理有两种方法 每次读入一个字符,处理这一字符 char c; w ...

  7. 信息学奥赛一本通 1134:合法C标识符 | OpenJudge NOI 1.7 06

    [题目链接] ybt 1134:合法C标识符 OpenJudge NOI 1.7 06:合法C标识符 [题目考点] 1. 字符判断 判断一个字符c是不是数字: c >= '0' &&am ...

  8. 信息学奥赛一本通 1133:输出亲朋字符串 | OpenJudge NOI 1.7 05

    [题目链接] ybt 1133:输出亲朋字符串 OpenJudge NOI 1.7 05:输出亲朋字符串 [题目考点] 1. 字符与ASCII码 [解题思路] 输入字符数组s1,结果储存在字符数组s2 ...

  9. 信息学奥赛一本通 1132:石头剪子布 | OpenJudge NOI 1.7 04

    [题目链接] ybt 1132:石头剪子布 OpenJudge NOI 1.7 04:石头剪子布 [题目考点] 1. 字符串处理 2. 判断字符串相同 s1,s2是字符数组,判断二者是否相同:strc ...

最新文章

  1. 美团五大最受欢迎的开源项目!
  2. 上海python培训班-上海哪家python培训班比较靠谱?
  3. java update多个字段的值_SQL的update多个字段的写法
  4. 最常用的动态sql语句梳理Mybatis(转)
  5. 报错 ValueError: too many values to unpack (expected 2)
  6. Hibernate多列作为联合主键(六)
  7. java 泛型 转化对象_java通过反射,泛型将定义的对象与对象之间互转
  8. 2020徐涛背诵笔记电子版pdf_2021徐涛冲刺背诵笔记电子版-2021徐涛冲刺背诵笔记pdf免费版下载_东坡手机下载...
  9. Unity 触摸屏操作(多点触摸)
  10. QFP封装芯片手工焊接和拆卸技巧
  11. html加载完成 产生动作,页面加载功能设计总结
  12. 把html页面保存为图片格式
  13. 计算机开关电源基本原理,开关电源基本原理与设计介绍——第一讲
  14. 《中国垒球》:决赛会师·占得先机
  15. ecu故障现象_汽车电脑ECU的故障诊断检修方法9种
  16. 一篇文章让你读懂 OpenStack 的起源、架构和应用
  17. 热门计算机游戏排名,十大pc游戏排行榜 英雄联盟位居第一,第三游戏体验感很强...
  18. 点分十进制与unsigned int 32互转
  19. Salesforce CPQ:如何实现复杂产品配置和报价?
  20. 萧亦坤:3.24黄金冲高不延续,美盘等待反弹布局空

热门文章

  1. 查看一个定义的方法在哪些地方被使用过(vs2008)
  2. 重磅盘点!2018年更受欢迎的技术干货,来来回回也就看了几十遍吧
  3. mysql增错误_使用MySQL练习增删改查时因为版本问题出现连接错误
  4. 聊聊这些天收到的简历
  5. 全球领先的数据库!我用它直接让公司项目的性能提升了一半~
  6. 漫话:为什么程序员喜欢使用0 ≤ i 10这种左闭右开的形式写for循环?
  7. 面向犯罪编程,9名程序员锒铛入狱
  8. 工行高级经理林承军:工行基于 MySQL 构建分布式架构的转型之路
  9. 数据交互智能终端设想
  10. Mac安装jdk1.8 / mysql5.7.16 与配置环境变量