欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

二十:数字重复长度计算

程序员文章站 2024-03-18 12:25:52
...

问题:数字重复长度计算

题目描述

有一串数字,比如2234445240(最后的0表示这一串数字的结束)
 输出最长的一段重复的次数。
比如第一个2连续重复了2次
3连续重复了1次
4连续重复了3次
5连续重复了1次
2连续重复了1次
4连续重复了1次
则最长的重复次数为数字4重复的3次。输出3,
输入
输入一串数字,以数字0结尾。
输出
输出最长重复的一段中,重复的次数
样例输入
2234445240
样例输出

3

#include<stdio.h>
#include<string.h>
int main(){
	char n='1';
	char a[100];
	int b[10];
	int i=0,m=0,k=0;
	while(n-48){
		scanf("%c",&n);
		if(n!=48){
			a[i++]=n;
		}
	}
	memset(b,0,sizeof(b));
	for(i=0;a[i]-48;i++){
		if(b[a[i]-48]>k&&b[a[i]-48]!=b[a[i-1]-48]){
			k++;
		}else{
			k=0;
			b[a[i]-48]++;
		}
	}
for(i=0;i<10;i++){
	if(b[i]!=0){
		printf("%d  %d\n",i,b[i]);
	}
	if(b[i]>m){
		m=b[i];
	}
}
	printf("%d",m);
	return 0;
	
}


相关标签: c语言实现