读者本地应该都有由各个集训队员撰写的题解。本文旨在对其进行一些补充。
代码基本都能在cf gym的提交中找到,用户名zx2003(应该没人不知道吧。。。)WF2017-2019需要在loj上找,因为当时觉得loj交起来比较舒适。

WF2014

B

本题复杂度是可以优于yht给出 O(w2log⁡d)O(w^2\log d)O(w2logd) 的,虽然也没什么意思。
对于每种离散物品,将背包容量按模 wiw_iwi​ 的值分类后,每一类都是可以决策单调性优化转移的,写个分治就没了,对zx还写了这个,每一类都是个经典的斜率优化问题,维护个凸包就不必带log了。

E

这里提供一个严格正确的做法。
我们维护每个点的颜色表示其所属的等价类集合,然后迭代若干轮并不断更新每个点的颜色。
每轮迭代中,按照题意可以把每个点的新颜色表示为 vector<vector<int>> ,然后用个 map 映射回 int
如果一轮迭代后颜色数不变,则无需继续迭代。由于颜色数至多从n降为1,所以迭代只会进行至多n轮,这也证明了dxm题解中的结论。
我的实现方式复杂度高达O(n^5) ,但是莫名AC了。实际上稍微牺牲点正确性用点哈希能降不少复杂度。

G

这里提供一个优于 O(n3)O(n^3)O(n3) 的做法。
通过一些分析,可以变为有O(n)个决策点,每个决策点要往左二分查找最左的可行位置,判断需要2-SAT。暴力需要判定nlogn次,但是如果按随机顺序计算决策点,二分前先检查一下是否可能更新答案,就只用判定O(n)次。2-SAT可以kosaraju+bitset优化,这样就得到了优秀的 O(n3w)O(\frac{n^3}{w})O(wn3​) 做法。
zjc给的做法是floyd,需要动态维护最短路,不确定是否能过通过压位或者四毛子做到优于n^3。

H

题本身没什么意思。主要是介绍一下一个通用性更强的网格图上高消实现方式。
网格图对应的矩阵M,性质可以弱化为若 Mi,jM_{i,j}Mi,j​ 非0,则 ∣i−j∣|i-j|∣i−j∣ 小于一个定值L。
然后我们改造一下矩阵存储方式,每行只存一段非0的长为 O(L)O(L)O(L) 的区间,重载个数组类即可做到这一点。然后跟普通高消一样写,稍微注意下循环上下界就行了。

L

这里提一下我一开始写的时候漏掉的细节。
对于平面图的一个连通分量,它的外部不一定与无穷远处相连通,也可能是被另一个连通分量的某个面给包裹着。听起来很显然但是小蒟蒻zx一开始就是没考虑到调了一年。

WF2015

G

首先要观察出决策树的结构。之后题解做法是(相对于我的做法)倒着弄,正着弄比较麻烦,我的办法是直接维护决策树上剩余节点构成的二叉树森林,每次贪心修改,复杂度应该比题解多log。具体细节忘了,感兴趣的话可以看我代码。

NEERC2017

F

写烦了导致一个1K题调了4h,唯一聊以自慰的地方是所有for循环都可以显式地O(1)计算,闲的蛋疼的对O(1)算答案感兴趣的人可以去看一下,讨论情况可能有点多。

NEERC2015

H

四维空间里的一个超立方体有16个顶点,每个顶点坐标取值都是0/1。一个立方块的八个顶点坐标满足,四维坐标中有一维均为定值。而两个立方块的交是一个平面,满足四维坐标中有两维均为定值。
任意钦定一个立方块八个顶点的坐标后可以递推出其它立方块的顶点坐标,顺便也完成了判定过程。
不过挺好奇的是这种题出题人怎么造数据的。

NEERC2013

C

这里给出一个严格正确的做法(无哈希)。
首先将重心提根。我们尝试给圆方树上每个点的子树赋一个字符用以描述同构关系。对于一个圆点,将其所有儿子的字符 sort 后可以看作一个字符串;对于一个方点,将其所有儿子的字符按序拼接得到串S后,取min(S,rev(S))也可以得到一个字符串。对于一个字符串,我们可以将其看作一个新的字符,并将得到的新字符赋给该点。维护所有字符串的集合需要个trie。
注意在根上需要处理循环同构,要跑个KMP。

CERC2016

G

首先可以将问题转为查询若干个矩形,要求返回结果形如

struct info{long long be,en;bool bo;vector<pair<long long,long long>>v;
};

其中 been 分别表示该矩形对应区间开头和结尾的极长0段,v 表示极长1段的长度及对应数量。
显然 info 是可合并的,直接按定义递归即可,剪枝加满就A了。要加的剪枝还是挺多的,详见代码吧。

IOI2021 国家集训队作业部分题解相关推荐

  1. 2017国家集训队作业[agc016e]Poor Turkey

    2017国家集训队作业[agc016e]Poor Turkey 题意: 一开始有\(N\)只鸡是活着的,有\(M\)个时刻,每个时刻有两个数\(X_i,Y_i\),表示在第\(i\)个时刻在\(X_i ...

  2. 洛谷P2619 [国家集训队]Tree I 题解

    洛谷P2619 [国家集训队]Tree I 题解 题目链接:P2619 [国家集训队]Tree I 题意: 给你一个无向带权连通图,每条边是黑色或白色.让你求一棵最小权的恰好有 need\text{n ...

  3. 【IOI2020国家集训队作业 Part 1】CF505E Mr. Kitayuta vs. Bamboos

    题目 题目描述 Mr. Kitayuta's garden is planted with nn bamboos. (Bamboos are tall, fast-growing tropical p ...

  4. BZOJ 2156 「国家集训队」星际探索(最短路)【BZOJ计划】

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 题目链接 https://hydro.ac/d/bzoj/p/2156 是 hydro 的 BZOJ ...

  5. [国家集训队]数颜色

    [国家集训队]数颜色 题解 很水的一道带修莫队板子题. 我们只需要将操作时间看作是当前询问的第三维,排序后跑莫队即可. 三维莫队块长为n23n^{\frac{2}{3}}n32​时时间复杂度是最优的, ...

  6. 2038: [2009国家集训队]小Z的袜子(hose)+莫队入门

    题目链接:2038: [2009国家集训队]小Z的袜子(hose) 题目: Description 作为一个生活散漫的人,小Z每天早上都要耗费很久从一堆五颜六色的袜子中找出一双来穿.终于有一天,小Z再 ...

  7. happiness[国家集训队2011(吴确)]

    [试题来源] 2011中国国家集训队命题答辩 [问题描述] 高一一班的座位表是个n*m的矩阵,经过一个学期的相处,每个同学和前后左右相邻的同学互相成为了好朋友.这学期要分文理科了,每个同学对于选择文科 ...

  8. P2183 [国家集训队]礼物(扩展卢卡斯)

    P2183 [国家集训队]礼物 题意: 有n个礼物,分给m个人,分给第i个人的礼物数量是wi,问送礼物的方案数. 题解: 扩展卢卡斯模板题 很容易看出和组合数有关的题目,对于总方案,完美可以将其分解为 ...

  9. P1829 [国家集训队]Crash的数字表格 / JZPTAB

    P1829 [国家集训队]Crash的数字表格 / JZPTAB 题意: 求∑i=1n∑j=1mlcm(i,j)\sum_{i=1}^{n}\sum_{j=1}^{m}lcm(i,j)∑i=1n​∑j ...

  10. P2634 [国家集训队]聪聪可可(树上启发式合并)

    P2634 [国家集训队]聪聪可可(树上启发式合并) 题意: 一颗n个点的树,问其中两点之间的边上数的和加起来是3的倍数的点对有多少个? 输出这样的点对所占比例 题解: 没有修改,统计边长为3的倍数, ...

最新文章

  1. CORS漏洞利用检测和利用方式
  2. CentOS7中离线安装Docker与卸载
  3. ext中fieldLabel文本太宽的问题,以及Panel居中显示
  4. setiosflags(ios::fixed)和setprecision()
  5. [蓝桥杯2019初赛]质数-质数筛or 水题
  6. Redis 的快照为什么不会阻塞其他请求?
  7. 【kafka】Kafka leader -1
  8. tomcat基本使用(二)
  9. 关于代码整理重构小记
  10. smarty3.X新命名规范引起的'Call of unknown method'
  11. sqlserver设计视图修改表时不允许保存更改的问题处理
  12. html 获取浏览器宽高,js获取浏览器高度与宽度的方法
  13. Transformer中Relative Position Bias以及DropPath细节梳理
  14. sql server导入备份文件
  15. HbuilderX 小程序转快应用
  16. 19杭电计算机考研科目,2019杭电计算机考研初试科目、参考书目、报录比汇总
  17. Ubuntu(18.04)不能上网解决办法
  18. excel文件下载下来损坏 js_js读取本地excel文件出现问题,这是咋回事
  19. java基于springboot二手车交易管理系统附源码
  20. 大麦人脸识别系统,如何支撑马拉松赛事?

热门文章

  1. php字体颜色代码大全,CSS中关于文本字体颜色(CSS color)的详解
  2. java web编程从入门到实践 pdf_《Java Web编程从入门到实践》读书笔记(一)
  3. matlab LSB算法的三种改进
  4. Google Earth Engine个人笔记:2 计算植被覆盖度
  5. sin75度用计算机咋算,sin75度等于多少啊?需要用到三角函数公式
  6. 如何批量将多个 PDF 文档转为 XPS 格式
  7. XPS文件怎么打开?可以转成PDF格式吗?
  8. 【Qt炫酷动画】demo04-仿Android旋转图标的等待对话框动画
  9. 使用定时器时遇到warning: #188-D: enumerated type mixed with another type警告
  10. 【解决】如何将腾讯QLV格式的视频转换成MP4