问题标题: 酷町堂:4523我的输出怎么是10?

0
0
已解决
施巧稚
施巧稚
初级守护
初级守护
#include<bits/stdc++.h>
using namespace std;
string s;
int main()
{
    int ans=0,max=-111111;
    cin>>s;
   for(int i=0;i<s.size();i++)
    {
            if(s[i]==s[i+1])
            {
                ans++;
            }
            if(ans>max)
            {
                max=ans;
            }
    }
    cout<<max<<endl;
} 

输出是10?请帮忙看看

 

题目:

题目描述 Description

输入一个字符串s,请你找到s中的一个无重复字符的最长字串b,并输出出来(如果有多个字串符合条件,输出最早出现的那个)。

输入描述 Input Description

一行,一个字符串s

输出描述 Output Description

一行,一个整数,表示s无重复字符出现的最长字串的长度

样例输入 Sample Input

aaaabbcdeeeefffdwdd

样例输出 Sample Output

4

数据范围及提示 Data Size & Hint

字符串长度不超过32。


0
0
沈峻宇
沈峻宇
资深天翼
资深天翼

for(int i=0;i<a.size();i++){

for(int j=i;j<a.size();j++){

for(int l=0;l<=200;l++)b[l]=0;

int f=1;

for(int l=i;l<=j;l++){

if(b[int(a[l])]){

f=0;

break;

}

b[int(a[l])]=1;

}

if(f)

mx=max(mx,j-i+1);

}

}

核心代码,自己对比。

max=mx

ps:未抄袭,自己研究搞出代码

沈峻宇在2020-03-28 16:25:04追加了内容

https://wenda.codingtang.com/questions/7610/这中间有和我一样的代码(绝对巧合)

如果你看不懂,进去看看大神讲解!

 

沈峻宇在2020-03-28 16:25:41追加了内容

是看书搞的代码!

沈峻宇在2020-03-28 16:27:08追加了内容

呜呜呜~被坑了!

沈峻宇在2020-03-28 16:27:55追加了内容

@施巧稚 

单纯的我被骗了!

 

0
我要回答