题解 | #奖学金#

奖学金

https://www.nowcoder.com/practice/cee98a512ec246a2918ea8121f7612c8

#include <stdio.h>
#include <stdlib.h>
struct stu
{
    int a;
    int b;
}*sc;
int cmp(void* a1,void* a2)
{
    return (((struct stu*)a1)->b-((struct stu*)a2)->b);
}
int main() {
    int n, r,avg;
    int i=0;
    int j=0;
    while(scanf("%d%d%d",&n,&r,&avg)==3)
    {
        sc=malloc(n*8);
        int sum=n*avg;
        int min=0;
        long x=0;
        for(i=0;i<n;i++)
        {
            scanf("%d%d", &((sc + i)->a), &((sc + i)->b));
            min=min+(sc + i)->a;
        }
        qsort(sc,n,sizeof(struct stu),cmp);
        if(min<sum)
        {
            for(i=0;i<n;i++)
            {
                for(j=(sc + i)->a;j<r;j++)
                {
                    x=x+(sc + i)->b;
                    min++;
                    if(min==sum)
                    goto end;
                }
            }
        }
        end:
        printf("%ld\n",x); 
    }
    return 0;
}

全部评论

相关推荐

不愿透露姓名的神秘牛友
07-11 11:24
大家还是用ai改吧,我心疼得要死,就当花钱买教训吧,人家直接拿完钱就跑路了
程序员小白条:简历修改700....神奇,又不是帮你面试,咋的,简历修改从双非变92了还是没实习变成有大厂实习了
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-10 14:10
啊啊啊啊好幸福,妈妈是我找工作发疯前的一束光
榕城小榕树:你是我见过最幸福的牛客男孩
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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