11:连续出现的字符(1.9)

题目没有说明是什么字符,但ascii码是0~255,可以直接定义一个数组a[1000].

如何记录字符连续出现的次数?

逐字符扫描,定义一个变量记录,初值为1

#include<cstdio>
#include<cstring>
char s[1100];
int a[1100]={0};
int main(){
    int k,num=1;
    scanf("%d",&k);
    scanf("%s",s);
    int len=strlen(s);
    for(int i=0;i<=len-2;i++){
        if (s[i]==s[i+1])num++;
        else num=1;
        if (num>=k) {
            printf("%c\n",s[i]);
            return 0;
        }
    }
    printf("No\n");
    return 0;
}

时间: 2024-11-03 19:14:28

11:连续出现的字符(1.9)的相关文章

31:字符串中最长的连续出现的字符

31:字符串中最长的连续出现的字符 查看 提交 统计 提问 总时间限制:  1000ms 内存限制:  65536kB 描述 求一个字符串中最长的连续出现的字符,输出该字符及其出现次数.字符串中无空白字符(空格.回车和tab),如果这样的字符不止一个,则输出出现最早的字符. 输入 一行,一个不包含空白字符的字符串,字符串长度小于200. 输出 一行,输出最长的连续出现的字符及其最长的连续出现次数,中间以一个空格分开. 样例输入 aaaaadbbbbbcccccccdddddddddd 样例输出

字符串中最长的连续出现的字符【指针练习】

链接:http://ica.openjudge.cn/zz/2/ 总时间限制: 1000ms  内存限制: 65536kB 描述 求一个字符串中最长的连续出现的字符,输出该字符及其出现次数,字符串中无空白字符(空格.回车和tab),如果这样的字符不止一个,则输出第一个 输入 首先输入N,即测试数据的组数每组测试数据输入:一行,一个不包含空白字符的字符串,字符串长度小于200 输出 一行,输出最长的连续出现的字符及其出现次数,中间用空格隔开 样例输入 2 aaaaabbbbbcccccccdddd

[2013百度软件研发笔试题] 求字符串中连续出现同样字符的最大值

题目完整描写叙述为:用递归的方式实现一个求字符串中连续出现同样字符的最大值.如aaabbcc,连续出现a的最大值为3,abbc,连续出现字符最大的值为2. 下面是我想出来的方法: #include <iostream> using namespace std; #define MAX(a, b) (a) > (b) ? (a) : (b) int Get(char *s, int n, int m)  //字符指针, 当前最长串, max最长串 {     if(*(s+1) == '\

[2013百度软件研发笔试题] 求字符串中连续出现相同字符的最大值

题目完整描述为:用递归的方式实现一个求字符串中连续出现相同字符的最大值,如aaabbcc,连续出现a的最大值为3,abbc,连续出现字符最大的值为2. 以下是我想出来的方法: #include <iostream> using namespace std; #define MAX(a, b) (a) > (b) ? (a) : (b) int Get(char *s, int n, int m)  //字符指针, 当前最长串, max最长串 {     if(*(s+1) == '\0'

去除字符串中连续重复的字符

目的:把字符串中连续重复的字符赐除掉. 输入:序列:kkkhan888shioobo66 正确的返回结果应该是:hanshibo 思路解析 1 使用JAVA正则表达式,匹配出连续相同的字符或数字. 2 查找出匹配出来的序列,并取出来放到list里面 3 对list进行排序.把重复的序列排在前面.(该步可省略) 4找出连续重复的子序列,并把这些连续重复的子序列用空(字字符串)替换. 5 返回输出. code public class Test { public static void main(S

使用c++11标准库转换字符编码

转自:http://www.cnblogs.com/LinuxHunter/archive/2013/01/06/2848293.html #include <stdio.h> #include <locale> #include <codecvt> const std::string ws2s( const std::wstring& src ) { std::locale sys_locale(""); const wchar_t* da

连续出现的字符

描述 给定一个字符串,在字符串中找到第一个连续出现至少k次的字符. 输入第一行包含一个正整数k,表示至少需要连续出现的次数.1 <= k <= 1000.第二行包含需要查找的字符串.字符串长度在1到1000之间,且不包含任何空白符.输出若存在连续出现至少k次的字符,输出该字符:否则输出No.样例输入 3 abcccaaab 样例输出 c原代码: #include <iostream> using namespace std; int main() { long n,k=1; cha

8.11.3 统计大小写字符个数

# 8.11.3.c #include <stdio.h> #include <ctype.h> int main(void) { char ch; int upper = 0, lower = 0, total = 0; while ((ch = getchar()) != EOF) { ++total; if (islower(ch) > 0) ++lower; else if (isupper(ch) > 0) ++upper; } printf("大写

字符串统计 连续的某个字符的数量

这个问题可以使用dp来统计, 假设我们要统计s中连续的a的数量, 那么我们可以定义f[i]为以i结尾连续的a的个数, 那么我们可以定义如下递推式 , if s[i]=='a' then f[i] = f[i-1] + 1;  else  f[i]=0;  这样就统计了出来, 我们也可以定义以i为开头的连续的i的个数, 只需倒着循环一次即可.