有什么问题吗?

时间:2019-11-08 05:15:24

标签: c++

问题:https://www.hackerrank.com/challenges/migratory-birds/problem

测试用例链接:https://hr-testcases-us-east-1.s3.amazonaws.com/33294/input04.txt?AWSAccessKeyId=AKIAJ4WZFDFQTZRGO3QA&Expires=1573162301&Signature=MgpSHa3lxX%2FwYwumjzAmF8uviZE%3D&response-content-type=text%2Fplain

对于此测试用例,我为什么无法获得任何输出?

预先感谢

#include<iostream>
using namespace std;
int main()
{
    long long n,i=0,num=0,mx=0,r=0;
    cin>>n;
     long long arr[6]{0};
    for(int i=0;i<n;i++)
    {
        cin>>num;
        arr[num]++;
    }
    for(int i=1;i<6;i++)
    {
        if(arr[i]>mx)
        {
            mx=arr[i];
            r=i;
        }
    }
    cout<<r;
}

2 个答案:

答案 0 :(得分:2)

这看起来有问题:

layout_height

如果读入match_parent的输入值大于5(或小于零),则将值写入到距 long long arr[6]{0}; for(int i=0;i<n;i++) { cin>>num; arr[num]++; } 的无效内存位置时,将存在未定义的行为。

答案 1 :(得分:0)

您的代码没有错,我接受了所有测试用例。但是可以以更优化的方式返回解决方案 enter image description here

相关问题