为啥第二题过不了

求问大佬们为啥我的第二题死活过不了
我感觉完全对的啊
#include <stdio.h>
#include <stdlib.h>
int cmp(int *a, int *b)
{
    return *a - *b;
}
int cmp2(char *a, char *b)
{
    return (int)*a - (int)*b;
}
struct card
{
    int cnum;
    int *count;
    char *ctype;
    int *jishu;
};
typedef struct card *CARD;
int main()
{
    int num;
    scanf("%d", &num);
    struct card deal[num];
    //读入数字
    for (int i = 0; i < num; i++)
    {
        scanf("%d", &deal[i].cnum);
        getchar();
        deal[i].count = (CARD)malloc(sizeof(int) * deal[i].cnum);
        deal[i].ctype = (CARD)malloc(sizeof(char) * deal[i].cnum);
        deal[i].jishu = (CARD)malloc(sizeof(int) * 11);
        //读入数字
        for (int j = 0; j < deal[i].cnum; j++)
        {
            scanf("%d", deal[i].count + j);
            getchar();
        }
        //读入类型
        for (int j = 0; j < deal[i].cnum; j++)
        {
            scanf("%c", deal[i].ctype + j);
            getchar();
        }
    }

    int times[num];

    int flag = 0;
    //先对数据进行排序,再处理
    for (int i = 0; i < num; i++)
    {

        times[i] = 1;
        qsort(deal[i].count, deal[i].cnum, sizeof(int), cmp);
        qsort(deal[i].ctype, deal[i].cnum, sizeof(char), cmp2);
        for (int j = 0; j < deal[i].cnum; j++)
        {
            deal[i].jishu[deal[i].count[j]]++;
        }
        for (int m = 0; m < 11; m++)
        {
            if (deal[i].jishu[m] == 4)
            {
                flag = 4;
                break;
            }
            else if (deal[i].jishu[m] == 3)
            {
                for (int p = 0; p < 11; p++)
                {
                    if (deal[i].jishu[p] == 2)
                    {
                        flag = 5;
                        break;
                    }
                    flag = 7;
                }
            }
            else if (deal[i].jishu[m] == 2)
            {
                for (int p = 0; p < 11; p++)
                {
                    if (deal[i].jishu[p] == 3)
                    {
                        flag = 5;
                        break;
                    }
                    else if (deal[i].jishu[p] == 2 && p != m)
                    {
                        flag = 8;
                        break;
                    }
                    flag = 9;
                }
            }

            //连续性判断
            if ((deal[i].count[4] - deal[i].count[3] == deal[i].count[3] - deal[i].count[2]) && (deal[i].count[3] - deal[i].count[2] == deal[i].count[2] - deal[i].count[1]) && (deal[i].count[2] - deal[i].count[1] == deal[i].count[1] - deal[i].count[0]))
            {
                if (deal[i].ctype[0] == deal[i].ctype[deal[i].cnum - 1])
                    flag = 2;
                else
                    flag = 6;
            }
        }

        if (deal[i].count[0] == deal[i].count[deal[i].cnum - 1] && deal[i].cnum == 5)
            times[i] = 15000;
        else if (flag == 2)
            times[i] = 8000;
        else if (deal[i].ctype[0] == deal[i].ctype[deal[i].cnum - 1] && deal[i].cnum == 5)
            times[i] = 300;
        else if (flag == 4)
            times[i] = 150;
        else if (flag == 5)
            times[i] = 40;
        else if (flag == 6)
            times[i] = 20;
        else if (flag == 7)
            times[i] = 6;
        else if (flag == 8)
            times[i] = 4;
        else if (flag == 9)
            times[i] = 2;
    }
    for (int i = 0; i < num; i++)
    {
        printf("%d\n", times[i]);
    }

    return 0;
}

全部评论
我也感觉没问题,就是过不了,奇了怪了
1 回复 分享
发布于 2022-03-26 17:12

相关推荐

||&nbsp;先说下主播个人情况:211本,暑期实习之前有过一段中大厂的后端实习,暑期拿过腾讯的实习offer,综合考虑业务和语言最终去了美团。实习期间体感还是不错的,5月初去的,去了就一直急着要需求做,担心因为没有产出导致转正失败,在第二个星期就和mt透露我希望能够留用。虽然第一个由于美团新人landing的友好性基本没做什么需求,但是后面也写出了小2w行的代码量(不包含单测)。中期经常主动加班赶需求,经常持续一两个星期加班到10点甚至更后面。mt对我确实不错,也是言传身教,实习期间给我讲了很多关于单测,ddd,set化等的理解,也是受益匪浅,此外在做需求的时候,也能看出把比较有含金量的部分交给我做...
菜菜菜小白菜菜菜:我在字节实习了四个月,有转正的压力所以周末大部分也在公司自学,也是因为一些原因转正拖的很久,这个点还没答辩,过段时间才回去答辩。整个不确定性的焦虑贯穿了我的秋招三个月,我也曾经犹豫过是不是应该放弃转正走秋招更快,最后因为沉没成本一直舍不得放弃,前前后后七个月真的挺累的,尤其是没有来字节实习的同学已经校招拿到意向时更加焦虑。这段时间也跟mentor聊了很多次,他告诉我未来工作上或者生活上,比这些更头疼的事情会更多,关键还是要调整好自己的心态。转正没有通过从过程上来看其实跟你自身没太大的关系,拖了三个月不出结果显然是ld的问题,并且今年美团最近的开奖大家似乎都不是很乐观,所以不去也罢。我在字节实习的时候,6月份有一个赶上春招末期的25届同事刚面进来,也拿到了小sp的薪水。不要对这件事有太大的压力,时代的问题罢了
点赞 评论 收藏
分享
想玩飞盘的菠萝蜜在春...:上交✌🏻也拒?
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务