权眸 2016-07-05 16:09
浏览 366

HDOJ 5038 测试了很多数据都可以,为什么AC不了,求指教哪里错了

 #include<iostream>
#include<algorithm>
#include<cstdio>
using namespace std;
int w[1000005];
int s[1000005];
int num[1000005];
typedef struct{
    int s1;
    int times;
}Mode;
Mode mode[1000005];
int cmpq(const Mode &a, const Mode &b)
{
    return a.times > b.times;
}

int cmpp(const int &a, const int &b)
{
    return a < b;
}
int main()
{
    int n,m, flag,flags,i, j, k,c=1,time;
    scanf("%d", &m);
    while (m--)
    {
        scanf("%d", &n);
        for (i = 0; i<n; i++)
        {
            scanf("%d", &w[i]);
            s[i] = 10000 - (100 - w[i])*(100 - w[i]);
        }
        sort(s, s + i);
        time = 0;
        for (i = 0, j = 0; i<n; i++)
        {
            if (s[i] != s[i - 1] && i != 0)
            {
                mode[j].s1 = s[i - 1];
                mode[j].times = time;
                j++;
                time = 1;
            }
            else
                time++;
            if (i == n - 1)
            {
                mode[j].s1 = s[i];
                mode[j].times = time;
                j++;
            }
        }
        sort(mode, mode + j, cmpq);
        printf("Case #%d:\n", c++); 

            flag = 0,flags=0;
            for (i = 0; i < n; i++)
            {
                if (s[i] != s[0])
                    flag = 1;
            }
            for (i = 0; i < j;i++)
            {
                if (mode[i].times != mode[0].times)
                    flags = 1;
            }
            if (!flags&&flag)
            {
                printf("Bad Mushroom\n");

            }
            else
            {
                for (i = 0, k = 0; i<j; i++)
                {
                    if (mode[i].times == mode[0].times)
                    {
                        num[k] = mode[i].s1;
                        k++;
                    }
                }
                sort(num, num + k, cmpp);
                for (i = 0; i<k - 1; i++)
                {
                    printf("%d ", mode[i].s1);
                }
                printf("%d\n", mode[k - 1].s1);
            }

    }
    return 0;
}
  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 keil的map文件中Image component sizes各项意思
    • ¥30 BC260Y用MQTT向阿里云发布主题消息一直错误
    • ¥20 求个正点原子stm32f407开发版的贪吃蛇游戏
    • ¥15 划分vlan后,链路不通了?
    • ¥20 求各位懂行的人,注册表能不能看到usb使用得具体信息,干了什么,传输了什么数据
    • ¥15 Vue3 大型图片数据拖动排序
    • ¥15 Centos / PETGEM
    • ¥15 划分vlan后不通了
    • ¥20 用雷电模拟器安装百达屋apk一直闪退
    • ¥15 算能科技20240506咨询(拒绝大模型回答)