题解 | #立希喂猫#

乐奈吃冰

https://ac.nowcoder.com/acm/contest/84444/A

立希喂猫

提供一个c++的代码,轻喷。

关于思路可以参考上面Python同学的讲解,主要用到了前缀和,降低复杂度。

不过c++的处理要麻烦一些。

下面是代码

#include<bits/stdc++.h>
#define lli long long int
using namespace std;
const int N = 1e5 + 10;

int a[N];
vector<pair<int,int> >b;

lli c[N];
lli d[N];

bool paircom(int a, pair<int,int> b){
    return a < b.first;
}

int main(void){
    int n; scanf("%d", &n);
    for(int i = 0; i < n; i++){
        scanf("%d", &a[i]);
    }
    int x;
    for(int i = 0; i < n; i++){
        scanf("%d", &x);
        b.push_back({x, i});
    }
    sort(b.begin(),b.end());
    
//     # b[i].first < k, 即全部吃完的种类
    for(int i = 0; i < n; i++){
        if (i==0) c[i] = b[i].first * a[b[i].second];
        else c[i] = c[i-1] + b[i].first * a[b[i].second];
    }
    
//     # b[i].first >= k, 没有全部吃完的种类, 只能吃k*a[-]
    for(int i = n-1; i >= 0; i--){
        if (i==n-1) d[i] = a[b[i].second];
        d[i] = d[i+1] + a[b[i].second];
    }

    
    int q; scanf("%d", &q);
    while(q--){
        lli k; scanf("%lld", &k);
        lli ind = upper_bound(b.begin(), b.end(), k, paircom) - b.begin();
        lli ans = 0;
        if (ind >= 1) ans += c[ind-1];
        ans += k*d[ind];
        printf("%lld\n", ans);
    }
    return 0;
}

全部评论
什么爱猫TV
点赞 回复 分享
发布于 2024-06-09 22:03 上海

相关推荐

不愿透露姓名的神秘牛友
2024-12-18 15:35
程序员牛肉:完全是在胡写简历。 我很好奇你干嘛要在教育经历里面写你是软件二班的班长?你写它的目的是什么?我觉得真的就是很突兀。给我第一感觉就是:你真的是一个心智健全的成年人吗? 另外我也很好奇你是怎么做到参加了这么多所谓的计算机比赛,完事儿一个拿得出手的项目都没有。 自己的项目经历还是图书馆管理系统这种垃圾东西……我的的建议是你都不如大幅度删减一下自己的水奖项,看着真的给人一种又水又学傻了的感觉。 计算机不看奖项,看院校和个人能力。 计算机是强工科,你要投后端的你就应该明白,人家招你进去是指望你干活儿的。那你觉得你这份简历有展示出你的后端水平吗? 你动动你的脑子想一想,人家面试官要想通过你的简历看出你的项目开发能力,最重要的板块就是两个,第一个是你的实习,第二个是你的项目。你没有实习,是不是就应该在项目上好好琢磨琢磨? 你自己看看你项目写的什么描述,你作为一个要后端岗位的应届生,你对你自己项目的描述还仅仅停留在使用mySQL,使用JAVA,使用spring boot框架。给人一眼感觉就感觉完全就是你做的玩具。可能就是你哪一个学期做的课设。 对于应届生来讲,在项目板块要尽量突出自己的技术能力,因为谈业务你肯定也不懂。简单来讲,你的项目要清晰准确的表达:你用哪种技术解决了现有的哪种技术问题,带来了多少的效益提升? 所有关于项目的描述都围绕我说的这种表达方式去写。不要自己自嗨式的写一堆垃圾上去 你既没有实习项目,又没有一个比较好一点的项目,而且院校也比较差,所以找工作会异常的难找。
点赞 评论 收藏
分享
黑皮白袜臭脚体育生:春节刚过就开卷吗?哈基馆,你这家伙......
点赞 评论 收藏
分享
评论
2
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务