7-8 点赞(需要继续改进)

题目很简单,但感觉程序过于复杂,时空复杂度太高了

先记录一下,找到更好方法后再来修改

7-8 点赞(需要继续改进)

#include<iostream>
using namespace std;
int main()
{
    int n;
    cin>>n;
    int a[1001]={0};
    while(n--)
    {
        int k;
        cin>>k;
        while(k--)
        {
            int num;
            cin>>num;
            a[num]++;
        }
    }
    int max=-1,maxnum;
    for(int i=1;i<=1000;i++)
    {
       // printf("%d ",a[2]);
        if(a[i]>=max)
        {
            maxnum=i;
            max=a[i];
           // printf("该数次数为%d ",max);
        }

    }
    printf("%d %d",maxnum,max);
    return 0;
}

上一篇:mysql while 循环


下一篇:2021-08-05 数组的度