问题标题: 1160

0
1
谈文瑞
谈文瑞
新手光能
新手光能
#include<bits/stdc++.h>
using namespace std;
int main()
{
    long long n,max;
    cin>>n;
    string a[n];
    int i;
    for(i=1;i<=n;i++)
        cin>>a[i];
    int len[n];
    for(i=1;i<=n;i++)
    {
        len[i]=a[i].size();
    }
    max=len[1];
    for(i=1;i<=n;i++)
    {
        if(max<len[i])
        {
            max=len[i];
        }
    }
    cout<<max;
    return 0;
}

哪错了?

1160   求字符串的最大长度

题目描述 Description

输入N行字符串,输出最长的字符串对应的长度。

输入描述 Input Description

输入N+1行,第一行为一个整数N,之后N行为N行字符串。
【数据范围】
1=<N<=100
字符串长度小于255

输出描述 Output Description

输出一个数。

样例输入 Sample Input

 

2
abcde
EDCRFVTGB

样例输出 Sample Output

 

9


0
欧阳语聪
欧阳语聪
资深守护
资深守护
for(int i=1;i<=b;i++){
        getline(cin,a);
        if(a.size()>c)
        c=a.size();
    }
0
0
0
0
0
被禁言 贾敬波
贾敬波
高级守护
高级守护

数组越界了吧,定义一个数组len[n],里面的元素是0到n-1之间吧,但是你的循环是1到n之间的。

0
余炳锌
余炳锌
新手守护
新手守护

把你代码里面的所有1改0,再for里面的 i<=n改为i<n。就能跑起来了

原因:我们定义了数组string a[n],假设n=3,

我们的数组中的的元素分别为a[0],a[1],a[2];

并没有a[3],上面的3是指数组里有三个元素。

 

0
黄子扬
黄子扬
新手守护
新手守护

把你代码里面的所有1改0,再for里面的 i<=n改为i<n。就能跑起来了

原因:我们定义了数组string a[n],假设n=3,

我们的数组中的的元素分别为a[0],a[1],a[2];

并没有a[3],上面的3是指数组里有三个元素。

0
0
0
我要回答