Codeforces Global Round 做题记录

Codeforces Global Round

Round 2

*CF1119G

非常厉害的题

\(m\) 个敌人,第 \(i\) 个敌人的生命值为 \(hp_i\)。我方有 \(n\) 个人,需要将 \(n\) 个人分为 \(m\) 组,进行若干轮攻击。每一轮攻击,每一组可以任意选择一个敌人进行攻击,使其生命值减去组中的人数。求最少需要进行多少轮攻击才能使得所有敌人的血量值非正,并给出方案。

\(1\le m\le n\le 10^{6}\)\(1\le hp_i\le 10^{6}\)

解法

答案的下界是 \(\lceil\frac{\sum hp_i}{n}\rceil\),考虑如何取到这个下界。一种巧妙的办法是,所有人先攻击第一个敌人,当第一个敌人生命值小于 \(n\) 时,分出 \(hp_1\bmod n\) 人攻击一号敌人,剩下的攻击二号敌人。那么还需要分出 \((hp_1+hp_2)\bmod n\) 人攻击第二个敌人,以此类推。那么每一个敌人都能被恰好攻击完(除了最后一个)。

将每一个前缀和对 \(n\) 取模得到数组 \(r\),将 \(r\) 排序,我们希望分组后人数的每一个前缀和对应一个 \(r\),那么只需要对 \(r\) 做差分即可。输出攻击方案只要逐个攻击即可。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/880224.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Zookeeper入门api与应用

一、 说明 Zookeeper作为一个分布式的服务框架,主要用来解决分布式集群中应用系统的一致性问题,它能提供基于类似于文件系统的目录节点树方式的数据存储,但是 Zookeeper并不是用来专门存储数据的,它的作用主要是用来维护和监控你存储的数据的状态变化。通过监控这些数据状态…

马走日(结论题)

这道题本质上,是一道结论题,结论如下: 1.小尺寸处理: 如果点阵的行或列有一个为1,则马无法移动,只能留在起点,此时答案为1。 如果点阵的最小边为2,则马只能沿着较长的边移动,每次移动步长为2,此时答案为较长边的一半加1。 2.中等尺寸处理: 当点阵为3x3时,马无法到达…

[lnsyoj1158] 淘淘蓝蓝之幻影树

dp题意sol 若某一方胜利,则设该方战胜的区间为 \([l_i,r_i]\),那么过程可描述为 \(1\) 打败 \([l_1,r_1]\),\(2\) 打败 \(l_2,r_2\)…………\(k\) 打败 \([l_k,r_k]\)。显然,\(k\) 打败 \([l_k,r_k]\)…………\(2\) 打败 \(l_2,r_2\),\(1\) 打败 \([l_1,r_1]\) 与之等价,…

NAS——强化学习结合CNN

一. 子模型的基本架构子模型由N个卷积单元和M个缩减单元按一定规则排列后加上GAP层、FC层和Softmax层组成。关键:通过引入卷积单元和缩减单元,充分发挥了CNN模型强大的特征提取能力。 整个结构中后面三层是确定的,中间的卷积单元和缩减单元要从搜索空间中获取。 二. 搜索空间…

Learn Learn Go Reverse

根据做题学习 [i春秋ezgo]Go栈扩容的逻辑,这里无需关注。具体汇编代码输入函数与输出函数系统学习go reverse 参考文章: https://forum.butian.net/share/1874 Go基础 见 https://forum.butian.net/share/1874 查看Go版本 //一、查看版本号 go version xx.exe //二、查看地址以…

Learn Learn Android Reverse

安卓基础 NDK开发 jni调用什么是jni?jni是Java Native lnterface的缩写。从java1.1开始,jni标准成为Java平台的一部分,允许Java代码和其他语言写的代码进行交互GetStringUTFChars();将java字符串转换为c字符串.java的字符串在虚拟机中,通过硬编码调用,cstring在内存中.env-&g…

2016蓝桥杯省赛B组

2016蓝桥杯省赛B组 1.煤球数目#include<bits/stdc++.h>using namespace std;int dp[200];int main(){ int sum=0; for(int i=1;i<=100;i++){ dp[i]=dp[i-1]+i; sum+=dp[i]; } cout<<sum; return 0;} 思路: 每一层煤球个数 0+1-&g…

css3手册

布局浮动:做文字环绕效果 弹性盒:单行或单列布局 网格:多行多列布局 弹性盒详细文档见MDN 弹性盒小游戏生成弹性容器和弹性项目默认情况下,弹性项目沿着主轴依次排列,侧轴拉伸 更改方向 通过flex-direction可更改主轴方向主轴排列 通过justify-content属性,可以影响主轴的…

CNN

具体在第五次汇报卷积神经网络是多层感知机(MLP)的变种。卷积神经网络(Convolutional Neural Networks)是一种包含卷积计算且具有深度结构的前馈神经网络,CNN具有表征学习的能力,能够按阶层对输入数据进行平移不变分类。CNN的设计灵感来源于动物视觉系统分级处理信息的能力…

LSTM(Long Short-Term Memory)长短时记忆结构

随着RNN在长序列处理中的应用深入,发现了其难以捕捉长距离依赖的问题。LSTM是传统RNN的变体,与经典RNN相比能够有效捕捉长序列之间的语义关联,通过引入了“记忆单元”(Memory Cell)和“门控机制”来控制信息的流动,解决了标准RNN中梯度消失和梯度爆炸的问题。其核心结构可…

MDB2PPT_v2.0 mdb数据转换为PPT

前言: 本软件原名“DataToPowerPoint”,已有将近20年的历史,目的是方便将mdb数据库中的数据导出为ppt进行学习或讲座。2007-9-29曾发布于“网上读书园地”,原先为共享软件,未注册版本有功能限制,如:至多输出30条数据、不能使用高级功能。近期对软件界面的布局等作了一些…

2.7 完成剩余表

今天完成了作业中所有表的建立,还剩余历史查询功能计划明天完成所有内容,并进行测试 今天还通过视频进一步学习了javaweb的知识