Acdream 1111:LSS(水题,字符串处理)

LSS

Time Limit: 20000/10000 MS (Java/Others)  Memory Limit: 128000/64000 KB (Java/Others)
Problem Description

Time flies, four years passed, colleage is over. When I am about to leave, a xuemei ask me an ACM  problem, but I can't solve it, I am 功力尽失.  Please help me so that I won't lose face in front of xuemei!

 

Give you a string , you should find the longest substring which is of the same character. 

Input

First line there is a T , represents the test cases.

next T lines  will be T strings.

the length of every string is less than 100

all the characters of the strings will be lowercase letters

Output

for each test case output a number

Sample Input
1
a
Sample Output
1
Source
wuyiqi
Manager
 
  水题,求最长连续相同字符子串长度。
  就这么道破题纠结了我和旭旭一晚上,啊啊啊,脑子抽抽了,真不应该。无法很好的理解题意是大问题啊。这道题坑就坑在题目中提到的“字串”的含义应该是连续的,而我理解的字串应该是不连续的啊!像最长公共字串问题里面的字串不就是不连续的吗,有点凌乱了…… 总之卡在这么道题上,真给跪了,怨念无穷啊……
  题意:求最长连续相同字符子串长度。
  思路:从a[1]开始比较,每一个字符与它前面的字符比较如果相同,num加1,每次与sum比较,如果num>sum,令sum=num。最后输出sum。
  代码
 1 #include <iostream>
 2 
 3 using namespace std;
 4 
 5 int main()
 6 {
 7     int T,i;
 8     cin>>T;
 9     while(T--){
10         char a[101];
11         cin>>a;
12         //统计最长连续相同字符子串长度
13         int num=1,sum=1;
14         for(i=1;a[i];i++){
15             if(a[i]==a[i-1])
16                 num++;
17             else
18                 num=1;
19             if(num>sum)
20                 sum=num;
21         }
22         cout<<sum<<endl;
23     }
24     return 0;
25 }

 

Freecode : www.cnblogs.com/yym2013

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值