第一题20分的看这

#include<bits/stdc++.h>//I AK ZHIS
using namespace std;
int n,k,cnt;long long sum;
struct sb{
    int t,u;
}a[200001];
bool cmp(sb x,sb y){
    return x.u>y.u;
}
int main(){
    cin>>n>>k;
    for(int i=1;i<=n;i++)cin>>a[i].t;
    for(int i=1;i<=n;i++)cin>>a[i].u;
    sort(a+1,a+1+n,cmp);
    for(int i=1;i<=n;i++){
        if(cnt==k)break;
        if(cnt>=a[i].t)continue;
        cnt++;sum+=a[i].u;
    }cout<<sum;
    return 0;//IOI AK ME TOO 
}

思路:把最后一个 for 循环改成

for(int i=1;i<=k;i++)sum+=a[i].u;

why?

题目说了时刻不重复且 k<=n 那么一定是充足的

全部评论
第一道题的数据都不需要考虑t,数据有点水
1 回复 分享
发布于 2023-10-05 22:30 安徽
你错的原因是你拿物品的顺序有问题,应该用 a[i].t 和 k 比,而不是 cnt
点赞 回复 分享
发布于 2023-10-06 10:37 上海

相关推荐

06-12 17:46
门头沟学院 Java
运营你豪哥:来说重点: ​1.项目前置,时间倒序。​​ 2.​项目描述强化结果与量化效果(STAR原则里的R)。​​ ​3.个人技能精炼,明确掌握程度,突出核心。​​ ​4.增加强有力开头的个人总结部分。​​ 5.​优化教育背景(成绩排名)、合并奖项与活动。​​
听劝,我这个简历该怎么改...
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

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