Codeforces Round #519 by Botan Investments E. Train Hard, Win Easy(思维+贪心)

MATLAB代码及接受套件:《沿轨速度预算管控饱和无人机群中的编队误差》.zip 1.版本:matlab2014a/2019b/2024b 2.附赠案例数据可直接运行。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。 立即下载

题目链接

题意

每个人都可以解决A题和B题,得分分别是 x i x_i xi​和 y i y_i yi​,他可以任意和他不讨厌的人组队,一个队伍中每个人都只能做 A A A和 B B B中的一道题,且每道题都只能由一个人来完成,队伍中两道题得分的总和越少越好。求出每个人所参与的所有队伍的得分总和。

题解

现在有c和d两个人组队,他们对于A题和B题的得分分别是, x c , y c x_c,y_c xc​,yc​和 x d , y d x_d,y_d xd​,yd​。c可以做A题的条件是 x c + y d ≤ x d + y c x_c+y_d \leq x_d+y_c xc​+yd​≤xd​+yc​。移项一下变成 y d − x d ≤ y c − x c y_d-x_d \leq y_c-x_c yd​−xd​≤yc​−xc​。 所以我们可以按照每个人 y − x y-x y−x进行排序,假设现在计算第i个人的得分,那么如果他和前 i − 1 i-1 i−1个人组队的话,他一直做的都是A题和后 n − i + 1 n-i+1 n−i+1个人组队的话做的都是B题。再分别求 x x x和 y y y的前缀和就可以做到 O ( 1 ) O(1) O(1)计算一个人的得分。最后再根据讨厌的关系减一减就可以了。

代码

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const int maxn = 3e5+5;

struct node {
    ll x,y;
    int id;
    ll val;
    bool operator <(const node& rhs) const {
        return val < rhs.val;
    }
}a[maxn], b[maxn];

ll prex[maxn], prey[maxn];
ll ans[maxn];
int n,m;
ll get(ll x, ll _x, ll _y, int pos) {
    ll px = pos;
    // cout << px <<" ";
    ll ret = 0;
    ret += prey[px]+_x*px;
    // cout << ret <<" ";
    ret += prex[n]-prex[px]+_y*(n-px);
    // cout << ret <<" ";
    ret -= (_x+_y);
    // cout << ret <<endl;
    
    return ret;
}
int main() {
    
    scanf("%d%d", &n, &m);
    for(int i = 1; i <= n; ++i) {
        scanf("%lld%lld", &a[i].x, &a[i].y);
        a[i].val = a[i].y-a[i].x;
        b[i].x = a[i].x; b[i].y = a[i].y;
        a[i].id = i;
    }
    sort(a+1,a+n+1);
    // cout << a[4].val << endl;
    for(int i = 1; i <= n; ++i) {
        prex[i] = prex[i-1]+a[i].x;
        prey[i] = prey[i-1]+a[i].y;
    }
    for(int i = 1; i <= n; ++i) {
        // cout <<i <<" ";
        ans[a[i].id] = get(a[i].y-a[i].x, a[i].x, a[i].y, i);
        // cout << endl;
    }
    for(int i = 0; i < m; ++i) {
        ll u,v;
        scanf("%lld%lld", &u, &v);
        ll ret = min(b[u].x+b[v].y, b[u].y+b[v].x);
        // cout << ret << endl;
        ans[u] -= ret;
        ans[v] -= ret;
    }
    for(int i = 1; i <= n; ++i)
        cout << ans[i] <<" ";
    cout << endl;
    return 0;
}

CrewAI 多 Agent 实战包 v1(Mock免Key跑通+通义千问可选+流水线样例) 本资源是 CrewAI 风格多 Agent 可运行工程包:研究→写作→审校等流水线样例。无 API Key 时自动降级 Mock 引擎跑通;有 DASHSCOPE_API_KEY 时可接真实 CrewAI + 通义千问。含中文 README、samples、smoke 留档、单元测试。本包不含密钥。关联博客:https://blog.csdn.net/mtl1994 立即下载

相关推荐

市场销售总监年终汇报必备PPT.pptx

市场销售总监年终汇报必备PPT

CF 1075E. Train Hard, Win Easy(前缀和+ 二分)

题目链接 E. Train Hard, Win Easy 分析 只需要做少量的数学计算就可以得出结果 官方题解 code #include&lt;bits/stdc++.h&gt; using namespace std; #define MAX_VAL 1004 #define MAX_ARRAY_SIZE 300005 #define ms(x,v) mem...

taotao 的大学墓志 608

2263XT开卡工具N48R,威刚S20

2263XT开卡工具N48R,威刚S20可用

codeforces 1043 E. Train Hard, Win Easy

题目传送门 题意: 有n个人,m个排斥关系,有一个竞赛,有两道题目,给出n个人做两道题的做题速度,然后求分别这n个人做题时间累积的最小值。每个人只能做一道题,下一个题目必须他的同伴来做。有排斥关系的两个人不能相互组队。 思路: 设i的做题时间分别为xi,yi,j的做题时间分别为xj,yj。 若让i做第一题,j做第二题,则必须满足以下不等式: xi+yj&lt;xj+yi; 则 xi-yi&...

zamaochick的博客 269

半桥LLC谐振变换器开环+闭环仿真设计资料(Simulink仿真实现)

内容概要:本文档系统性地介绍了半桥LLC谐振变换器的开环与闭环仿真设计方法,基于Simulink平台构建完整的仿真模型,涵盖系统建模、关键参数设计、控制策略实现及动态性能验证全过程。重点阐述了LLC谐振变换器的工作原理、谐振腔参数(Lr、Cr、Lm)的优化设计方法、零电压开关(ZVS)与零电流开关(ZCS)等软开关技术的实现机制,并深入探讨电压/电流双闭环控制策略,特别是恒压恒流双竞争控制逻辑的切换机制与稳定性保障。资料配套提供完整的仿真模型、详细说明文档及参考文献,有助于全面掌握其在启停过程、负载突变等工况下的动态响应特性与系统鲁棒性调控方法。; 适合人群:具备电力电子技术基础理论知识和Simulink仿真操作能力的高校研究生、科研机构研究人员,以及从事高频高效开关电源、新能源汽车车载充电机(OBC)、充电桩电源、数据中心供电等领域的工程技术人员。; 使用场景及目标:① 掌握LLC谐振变换器在实际工程中的精确建模与仿真分析流程;② 深入理解并独立实现从开环频率调制到闭环反馈控制的平滑切换逻辑;③ 应用于高效率DC-DC变换器、电动汽车充电系统、可再生能源并网电源等场景下的控制系统设计与性能优化; 阅读建议:建议结合所提供的仿真模型进行分步调试与参数扫描实验,重点关注控制器带宽设计、谐振元件参数匹配对效率的影响以及系统上电过程中的软启动策略设计,同时推荐对比学习全桥LLC、CLLC等衍生拓扑的相关资料,以建立完整的谐振变换器控制体系认知。

SOP 配电网故障重构方法研究【IEEE33节点】(Matlab代码实现)

内容概要:本文围绕基于SOP(Soft Open Point)的配电网故障重构方法展开研究,采用IEEE33节点标准配电系统作为仿真测试平台,利用Matlab进行代码实现与仿真验证。研究重点在于通过SOP这一柔性电力电子装置实现故障后网络拓扑的快速重构,提升供电恢复能力与系统可靠性。文中详细阐述了故障重构的数学建模过程,结合优化算法实现负荷转供与孤岛划分的协同决策,在保证辐射状运行约束的前提下,最大限度恢复失电负荷,并降低网络损耗。该方法充分体现了SOP在主动配电网中的灵活调控优势,为现代智能配电网的自愈控制提供了有效技术路径。; 适合人群:电气工程及相关专业的高校研究生、从事配电网自动化与智能电网研究的科研人员,以及具备一定Matlab编程基础和电力系统分析背景的研发技术人员。; 使用场景及目标:① 掌握基于SOP的配电网故障恢复机制与重构策略设计;② 学习如何在Matlab环境下构建IEEE33节点系统模型并实现故障重构算法;③ 深入理解含分布式电源与柔性装置的主动配电网优化运行方法; 阅读建议:建议结合电力系统分析基础知识,重点关注SOP的建模方式、故障重构的优化目标与约束条件设定,并动手实践Matlab代码以加深对算法流程和仿真结果的理解。

CODEFORCE #519 E. Train Hard, Win Easy

题目链接 吐槽: 这场题目读的我是欲仙欲死~~ 题意: ACM组举行训练赛,固定两道题,有N个选手,给出每个选手做这两道题目的罚时(显然罚时越小越好),假设每个人都互相知道每个人做某道题需要的罚时 教练想统计两两组队的最好成绩(两个组队的选手一定会按两个人总体最低罚时来安排A题),但是有一些选手并不想互相组队,给出不能互相组队的选手组合 求每个选手的总成绩(即与每个可以互相组队的选手一起组队...

qq_33688997的博客 388

一份外盘期货历史高频tick数据,涵盖能源、贵金属、股指等主要品种的逐笔成交与盘口快照 每条记录包含精确至毫秒的时间戳、合约代码、成交价格、成交量以及主动买卖方向标识 同时提供该时刻的最优申买价、申卖

一份外盘期货历史高频tick数据,涵盖能源、贵金属、股指等主要品种的逐笔成交与盘口快照。每条记录包含精确至毫秒的时间戳、合约代码、成交价格、成交量以及主动买卖方向标识。同时提供该时刻的最优申买价、申卖价及对应挂单量,用于还原盘口深度变化,数据时间覆盖连续的多个交易日。 数据源:CMES金融数据库

1043 E. Train Hard, Win Easy(贪心.)

传送门 每个人做第一题需要aia_iai​事件,做第二题需要bib_ibi​的事件 每个人都要和其他n−1n-1n−1个人组成一组队伍做一次题,你能选择的就是谁做第一题谁做第二题。 但是现在有mmm对关系起了冲突,不能组队 求能组队的最小花费时间总和. n<=300000n<=300000n<=300000 考虑(ai,bi)(a_i,b_i)(ai​,bi​)和(aj,bj)(a_j,b_j)(aj​,bj​) 花费是min(ai+bj,bi+aj)min(a_i+b_j,b_i+a_

jziwjxjd的博客 455

基于变频控制的多相交错LLC谐振变换器闭环仿真(Simulink仿真实现)

内容概要:本文档聚焦于电力电子与控制系统领域的仿真研究,核心内容为“基于变频控制的多相交错LLC谐振变换器闭环仿真”的Simulink实现。系统阐述了LLC谐振变换器的开环与闭环控制策略、软开关技术、恒压恒流双竞争控制机制、多相交错结构设计及变频调制原理,通过建模仿真深入剖析高频DC-DC变换器的工作特性与动态响应。文档整合了丰富的科研资源,涵盖双向CLLC、DAB变换器、PWM整流器、微电网优化调度、状态估计(EKF/UKF/PF)等多个前沿方向的仿真案例,形成一个体系完整、技术覆盖面广的综合性技术资料库,适用于高水平科研与工程实践。; 适合人群:电气工程、自动化、电力电子及相关专业的研究生、高校科研人员,以及从事新能源发电、电动汽车、智能电网、工业电源等领域的技术研发工程师。; 使用场景及目标:①开展高频谐振变换器拓扑结构与先进控制策略的深入研究;②完成复杂电力电子系统的建模、仿真与性能验证;③支撑SCI/EI论文撰写、科研项目申报与关键技术攻关;④辅助高校课程设计、研究生课题实践与毕业设计的仿真实验环节。; 阅读建议:建议结合文中提供的网盘资源与微信公众号资料进行系统学习,优先掌握LLC变换器的基本工作模态与谐振原理,再逐步深入闭环控制器设计与参数整定,仿真过程中应重点关注关键波形分析与系统稳定性判据,以全面提升对高频变换器动态特性的理解与工程应用能力。

产业园区运营负责人如何助力园区内企业与高校科研成果高效对接?.docx

科易网基于AI模型+行业大数据,在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,推出科技创新领域的AI+工具与数智化解决方案,推动科技创新与产业创新智能化发展。

Codeforces Round #519 by Botan Investments-E. Train Hard, Win Easy

地址:http://codeforces.com/contest/1043/problem/E 思路:排序+前缀和。对于取min(s1+ss2,s2+ss1),当 s1+ss2&lt;s2+ss1即s1-s2&lt;ss1-ss2取 s1+ss2,因此可以按照 s1-s2由小到大排序,再求得s1的前缀和ps1[n]和s2的后缀和ps2[n]。求出全部队员与其他队员组合的总和,对于第i位的队员...

随风而行的博客 394

BUSCO评估基因组的完整性

因为数据库收集的时候找的就是在不同的物种间都是单拷贝的基因,所以说在评估的物种里面应该也是单拷贝的状态才对。基因组层面评估:先去基因组上预测这些基因,再去做评估,如果说给他是一个注释好的基因集,这个时候提供的是一个蛋白集合,它就直接是去进行同源搜索,再去评估,看BUSCO数据库里面的这些单拷贝基因有或者无;首先,tblastn也是同源搜索,同源搜索之后,去对转录本进行读码框预测,预测完的结果还是去进行hmmsearch的搜索(hmmsearch是做蛋白质结构域搜索的),最终拿到BUSCO评估结果。

qq_64400864的博客 2959

E. Train Hard, Win Easy(贪心排序)

以前这种贪心排序的题也做到过....以前这种贪心排序的题也做到过....以前这种贪心排序的题也做到过.... 这次又没看出来哎哎这次又没看出来哎哎这次又没看出来哎哎 其实就是假定i花费xj花费y比较好其实就是假定i花费xj花费y比较好其实就是假定i花费xj花费y比较好 那么xi+yj<xj+yi那么x_i+y_j<x_j+y_i那么xi​+yj​<xj​+yi​ 移项得到xi−yi<xj−yj移项得到x_i-y_i<x_j-y_j移项得到xi​−yi​<xj​−yj​ 所

jziwjxjd的博客 556

kepserverEX6创建tcpserver接入自有协议(使用ucon接入)

kepserverEX6创建tcpserver接入自有协议

qq_38388813的博客 1631

2月底速申!国家超算互联网免费算力全攻略|编程小白零消耗实操首测_2026-02-26

2月底速申!国家超算互联网免费算力全攻略|编程小白零消耗实操首测作为一名编程小白,我目前正在学习编译和运行 Qt 框架,也在逐步摸索开发环境的配置方法,目标是打造一款属于自己的个人效率工具。就在这时,我挖到了一个国家级硬核福利:国家超算互联网核心节点开放免费试运行!哪怕是零基础如我,也能申领到 100 卡时异构加速卡算力,关键是——2 月底前申请更稳妥,早占位早使用。

qq_58517981的博客 2101

【Codeforces Round #519 by Botan Investments E】Train Hard, Win Easy

【链接】 我是链接,点我呀:) 【题意】 【题解】 设每个人做第一题、第二题的分数分别为x,y 我们先假设没有仇视关系。 即每两个人都能进行一次训练。 那么 对于第i个人。 考虑第j个人对它的贡献 如果xi+yj<yi+xj 即xi-yi<xj-yj 也就是说,如果我们以x-y作为关键字升序排序的话。 那么在第i个人右边的所有人。他的xj-yj的值都大于xi-...

271

IFIX5.8在Win10系统下的安装避坑指南

本文提供了IFIX5.8在Windows 10系统下的详细安装教程与避坑指南。针对常见的驱动缺失、UAC拦截及兼容性报错等问题,文章从安装前准备、分步安装流程到安装后配置与驱动修复,给出了系统性的解决方案,帮助工控从业者顺利完成部署。

f6g7h8i9j的博客 364

E. Train Hard, Win Easy

链接 [http://codeforces.com/contest/1043/problem/E] 题意 有n个人,每个人都有做出a,b题的分数,xi,yi,但是有些人是不能组队的,问你每个人和其他能组队的人最少分数和是多少 (组队时只能一个人做一个题,且不能相同) 分析 对于一个人和别人组队要么解决a,要么解决b, 他的分数是min(xi+yj,xj+yi); 所以我们只需要对统计xi+yj的情...

weixin_30856965的博客 136

从玩具车到手机充电:手把手带你用Multisim仿真Buck/Boost电路(附工程文件)

本文通过Multisim仿真软件,手把手教你搭建Buck降压电路和Boost升压电路,实现从12V到5V或3.7V到5V的电压转换。文章详细介绍了电路搭建步骤、关键波形观测技巧及常见故障排查方法,并附赠工程文件,帮助电子爱好者快速掌握电源转换技术。

weixin_29159127的博客 242

Android AMS——AMS初始化(二)

Android AMS 也是一个系统服务,属于系统服务中的引导服务,在 startBootstrapServices() 方法中启动。这里我们就来看一下 ActivityManagerService 的启动流程。

小旭的专栏 776

【Codeforces Round #519 by Botan Investments - E. Train Hard, Win Easy】排序+前缀和

Codeforces Round #519 by Botan Investments - E. Train Hard, Win Easy 题意 有两门考试A,B,n个学生要两两组队参加这场考试有两门考试A,B,n个学生要两两组队参加这场考试有两门考试A,B,n个学生要两两组队参加这场考试 每场考试对两个人的加分均为两个问题的得分总和每场考试对两个人的加分均为两个问题的得分总和每场考试对两个人的加分...

lajiyuan的博客 210

高通开发系列 - Camera之摄像头调试记录

记录一些调试内容

fulinux的博客 1216

Codeforces Round #519 by Botan Investments E

E. Train Hard, Win Easy 题解:考虑iii和jjj一起打时,如果iii打第一道,jjj打第二道,就有ai+bj&amp;lt;aj+bia_i+b_j &amp;lt;a_j + b_iai​+bj​&lt;aj​+bi​,所以可得ai−bi&amp;lt;aj−bja_i-b_i &amp;lt;a_j - b_jai​−bi​&lt;aj​−bj​,因此我们只需要根据ai...

Eternally831143的博客 280

大厂校招:星宸科技嵌入式面试及参考答案(5万字长文)

当一个新的硬件设备被插入系统时,内核会发送一个设备事件通知 udev,udev 会根据设备的属性和规则,为该设备创建一个合适的设备文件。通过去除不必要的驱动程序、禁用不需要的功能、选择合适的内核配置选项、优化内核编译选项和定制内核模块等方法,可以减小内核的大小和复杂性,提高系统的性能和稳定性。上半部通常是在中断关闭的情况下执行的,以确保中断处理的原子性。处理碎片化内存是内存管理中的一个重要问题,可以采用内存压缩、内存池管理、伙伴系统、首次适应算法和最佳适应算法等方法来减少内存碎片的产生,提高内存的利用率。

大模型大数据攻城狮的专栏 2927

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

上一篇: Educational Codeforces Round 53 (Rated for Div. 2) C. Vasya and Robot(二分+模拟)
下一篇: Codeforces Round #519D. Mysterious Crime(模拟+递推)
Link_Ray
博客等级 码龄9年 44粉丝 156原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值