- 博客(4)
- 资源 (2)
- 收藏
- 关注
原创 做题记录2021.12.13
CF985E Pencils and Boxes题目大意给定 n 个整数 a1 … an,求是否存在一种分组方案,满足:每个整数必须恰好分入一组每一组至少包含 k 个整数每一组中最大值与最小值之差 <= d输出“YES”或“NO”思路首先看到最大值与最小值之差与分组,果断排序然后想到一点贪心的想法,把能分且数量够的先分,不够的另外处理再用 dpdpdp 来处理,用一个数组 fif_ifi 记录到第 iii 个数是否可行具体来说,用一个指针 pospospos
2021-12-15 16:41:36 71
原创 做题记录2021.12.10
CF909E Coprocessor题目大意给定一张 DAG,其中含 n 个点和 m 条有向边。给定两种处理器,主处理器和副处理器以及对应的点(主处理器一次只可处理一个点,副处理器一次可处理多个点)求副处理器最少运行次数思路因为是 DAG ,所以想到拓扑排序。题目要求副处理器运行次数最少,相当于要主处理器运行次数尽可能多。所以我们可以先把能处理的主处理器的任务一次性处理完,然后再处理副处理器的。实现中,开两个队列维护两个处理器就OK了。CodeCF725D Contest Bal
2021-12-15 16:37:37 91
原创 做题记录2021.12.9
咕咕咕!咕了很久的博客终于更新了!CF720A Closing ceremony题目大意N×M个座位有N×M个人,一开始有 k人在(0,0)点上,l个人在(0,m+1)点上,问是否存在一种方案,使得每个人分配点与起始点的曼哈顿距离小于体力值,且每个人都有位置坐。思路贪心,考虑把两个起始点的人尽量往两个角塞先把第一波人按照体力值从小到大排序为什么不是从大到小排呢?如果体力值大的人把角落塞满了,体力值小的人又走不远,就没地方去了然后先把位置先分配前 KKK 人(当然也可以先分配给后 .
2021-12-15 16:10:26 916
原创 C++高精度加减法
加法:bigint add(bigint a,bigint b) { bigint ans; //初始化结果变量 ans.len=max(a.len,b.len); //(每一位与长度) //开始列竖式 for(int i=0; i<ans.len; i++) { //对每一位进行处理 ans.num[i]+=a.num[i]+b.num[i]; ...
2019-05-03 19:49:42 4135 1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人