首页 > 其他分享 >2023年牛客基础训练营2-I

2023年牛客基础训练营2-I

时间:2023-04-10 22:58:05浏览次数:49  
标签:int 训练营 所有 long 牛客 score solve 2023

题目链接:https://ac.nowcoder.com/acm/contest/46810/I

乱搞题,但是有一些差分思想在里面。

先将所有的$$x_i都设置为第一个等级。

注意到一个性质,不是所有的h都可以使答案发生变化。

然后我们可以先求出所有可以使\(x_i\)发生变化的h的最小值,接着从小到大枚举所有h。所有\(x_i都会使按照\)v_0v_1v_2v_3v_4$的顺序走的,不可能会跳过任意一个。所以,通过枚举h的方式,我们也就求出了所有情况,答案取最大值即可。

代码:


#include <bits/stdc++.h>
using namespace std;
typedef pair<int,int>P;
map<long long,vector<P>>M;
long long score[10],kan[10];
long long num[200010];
void solve(){
    M.clear();
    int n;
    cin>>n;
    long long INF = 1e18;
    for (int i=1;i<=n;i++){
        int x;
        cin>>x;
        num[i] = x-INF;
    }
    for (int i=1;i<=4;i++) cin>>kan[i];
    for (int i=0;i<=4;i++) cin>>score[i];
    long long ans = 1ll*n*score[0];
    for (int i=1;i<=n;i++){
        for (int j=1;j<=4;j++){
            M[kan[j]-num[i]+(j==4)].push_back({j-1,j});
        }
    }
    long long temp = ans;
    for (auto per:M){
        for (auto val:per.second){
            temp -= score[val.first];
            temp += score[val.second];
        }
        ans = max(ans,temp);
    }
    cout<<ans<<'\n';
}
int main(){
    ios::sync_with_stdio(0);
    cin.tie(0);
    cout.tie(0);
    int T;
    T = 1;
    cin>>T;
    while(T--) solve();
    return 0;
}

标签:int,训练营,所有,long,牛客,score,solve,2023
From: https://www.cnblogs.com/xjwrr/p/17304625.html

相关文章

  • 2023.4.10
    考虑全面,int类型会导致小鸡除以3后抹去后面的小数部分,导致情况多出。 ......
  • 每日总结2023-04-10
    今天完成了科技政策查询系统,实现了多条件查询    ......
  • 2023.4.10——软件工程日报
    所花时间(包括上课):6h代码量(行):0行博客量(篇):1篇今天,上午学习,下午学习。我了解到的知识点:1.学习了python爬虫,并了解了一些关于网络的知识;2.了解了一些网页分页的知识,在这里特别铭谢516的三位兄弟帮助了我很多,我非常感谢他们,在他们的帮助下,我独立地完成了建民老师要求的任务;......
  • AHOI2023 游记
    Day-1摆烂。问题不大。守门就是胜利。打完省选要滚回去学whk了,寄。Day0试机。无面基。没啥好说的。rp++.Day1面到了Aehnuwx(好耶8:30开始。开场15min过了T1。然后同时开T2和T3。T2读完感觉不太妙,自己并不擅长解决这样的图论问题。T3部分分好像很多......
  • 2023.4.10每日总结
    html分页展示<%@pageimport="wangzhan.Pd_zhengce"%><%@pageimport="wangzhan.Thesql"%><%@pagelanguage="java"contentType="text/html;charset=UTF-8"pageEncoding="UTF-8"%><!D......
  • 2023年4月10日周一
    计划准备中期答辩熟悉项目,修改项目,开发新功能执行上午:解决下拉权限修改的问题,删除13点39分  开始14点09分  干别的了,熟悉项目,准备中期答辩记录已解决解决下拉权限修改的问题,删除问题想法管理员删除用户,新增用户??mock地址有问题??没解决审批问题,发邮件问题权......
  • 2023很火的手机记事本APP
    在经济高速发展的今天,对于职场人士来说,时间是非常宝贵的,所以我们在工作中要时刻保持高效,能够准确的处理各种事项和工作任务。那么当工作中有很多信息需要记录、管理的时候,当有各种各样工作任务需要完成的时候,职场人士应该如何快速记录下来这些内容呢?  在2023年越来越多......
  • C/C++猜单词系统[2023-04-10]
    C/C++猜单词系统[2023-04-10]程序设计题二:猜单词面向专业:非计算机专业难度:41问题描述请从一片英文的短文中任意提取一个单词,给出该单词的字母数量,让游戏者猜单词的拼写字母,游戏者每次只能猜一个字母,如果游戏者猜的字母在单词中,单词中所有的该字母将被视为已猜出,例如:如果原单......
  • C/C++驾驶员理论课程模拟考试与学习系统[2023-04-10]
    C/C++驾驶员理论课程模拟考试与学习系统[2023-04-10]程序设计题:驾驶员理论课程模拟考试与学习系统出题人:金仙力面向专业:计算机科学与技术难度等级:41问题描述要求编写一个程序,模拟驾驶员科目一的考试,要求具有良好的操作界面。管理员负责试题库的管理(编辑、删除、增加等)......
  • mysql 2023-04-09 23:59:59 999 为什么会展示为第二天
    在MySQL中,日期时间类型包括DATE、TIME、DATETIME、TIMESTAMP等。其中,DATETIME和TIMESTAMP类型可以表示具体的日期和时间,包含年、月、日、时、分、秒等信息。当使用DATETIME或TIMESTAMP存储日期时间值时,如果精度达到了秒级别以上,MySQL会进行四舍五入,将精度保留到秒级别......