2023 syzx 春季训练 1
得找个时间把 zr 题补补。。
A
考虑 \(f_{i}\) 只能拆为 \(f_{i-1}+f_{i-2}\),考虑拆 \(f_{i-1}=f_{i-2}+f_{i-3}\) 时,这条 \(f_{i-2} - f_{i-3}\) 的边在另一种方案时还是会被切掉,因此能切就切。
每次直接暴力遍历树找切边,由斐波那契数列的增长即可只复杂度为 \(O(n\log n)\)。
B
发现 \(n\) 很小直接 \(2^n\) 枚举绝对值负号 \(t_i\),那么有
\]
\]
由于我们计算的是最大值,所以不合法的一定不优,根据排序不等式直接做就好了。
C
考虑每一行最前面一个,如果蓝色没有把某一个小的选上,那么第一列就一定会存在 红 < 蓝 不合法,因此按行首元素排序,一定是前 \(x\) 个蓝色后面全红。
枚举 \((x, k)\),判定条件变为左上角矩形最大值 < 左下矩形最小值 且 右上矩形最小值 > 右下矩形最大值,\(O(nm)\) 预处理即可。
D
在生成树的限制严格强于图,考虑如果一个端点没有被选择偶数次,那么其出边至少有一条被经过奇数次,此时答案为奇数次端点个数的一半(两两配对),否则直接走简单路径即可。
E
枚举 kruskal 排序分界点,每次暴力做一遍,询问二分计算多余贡献即可。
F
二分答案,check 时尽可能让当前数变小。
G
H/I
设 \(dp_i\) 为以 \(i\) 结尾的好序列个数
则 \(f_{i}=\min(f_{i-1}+1, a_i)\),所求为 \(\sum dp_i\)
不难发现,最后 \(f\) 可以表示为:
\(a_{x_1}, a_{x_1}+1, a_{x_1}+2 \dots a_{x_2}, a_{x_2}+1, a_{x_2}+2 \dots a_{x_i}, a_{x_i}+1, a_{x_i}+2 \dots\)
考虑修改,若 \(f_{i-1}+1\le a'_i\) ,则 \(f_{i}\),否则后面某段 \([i, x) (a_{x}<a'_i+x-i)\) 的 \(f_j\) 会变为 \(a'_i+j-i\),\(x\) 可以用线段树二分出来。
但是 \([x, n]\) 的贡献没有计算到,但是注意到 \(f_{x}\) 必然为 \(a_x\) (修改并不是真实修改)
我们考虑设 \(g_x\) 为当强制钦定 \(f_{x}=a_{x}\) 时,\(\sum_{i=x}^{n} f_i\) 的值,同理,\(g_{i}=g_j +\sum_{k=i}^{j-1} a_{j}+k-i\),其中 \(a_{j} < a_{i}+j-i\),仍然用上面的线段树二分即可。
J
状压,设 \(dp_{x, S}\) 为选择状态为 \(S\) 的最长合法前缀,预处理每个串不合法的位置计算贡献。
K
设 \(f_{i, j}\) 为还剩 \(i\) 个人,最大血量为 \(j\) 且最后全员白给无人胜利的方案数。
2023 syzx 春季训练 1的更多相关文章
- 18春季训练01-3/11 2015 ACM Amman Collegiate Programming Contest
Solved A Gym 100712A Who Is The Winner Solved B Gym 100712B Rock-Paper-Scissors Solved C Gym 100712C ...
- 2019春季训练02: JU Flash Contest Gym - 102035 训练报告与复盘
这场题极其简单 Solved 19 / 19 A Gym 102035A N integers 略 Solved 10 / 33 B Gym 102035B Mahmoud the Thief 用ma ...
- [xsy1100]东舰停战不可避
没有三点共线 这题的思想来源于JOI2011-2012春季训练合宿Day2T2,原题是个大毒瘤题(p.s.场上有人A,真的可怕),这题作为原题要用到的的一个结论而存在 点有两种颜色,先考虑对所有点做凸 ...
- 2023 年 CCF 春季测试赛模拟赛 - 2 题解
T1 约数和 标准解法 \(n = a_1^{b_1} \times a_2^{b_2} \dots a_k^{b_k}\) 那么根据算术基本定理的推广,约数个数和约数和都是可以快速计算得到 约数和 ...
- 2023 年 CCF 春季测试赛模拟赛 - 2
T1 分治,\(a^b + \dots + 1 = (a^{\lfloor\frac{b}{2}\rfloor} + \dots + 1) \times (a^{\lfloor\frac{b}{2}\ ...
- 2023 年 CCF 春季测试赛模拟赛 - 1
T1 个人思路: 询问:求 \(1\) 到 \(t_i\) 路径上离 \(1\) 最远的 \(p\),使得 \(dis_{1,p} \times 2 \le d_i\).即 \(dis_{1,t} \ ...
- (数据科学学习手札44)在Keras中训练多层感知机
一.简介 Keras是有着自主的一套前端控制语法,后端基于tensorflow和theano的深度学习框架,因为其搭建神经网络简单快捷明了的语法风格,可以帮助使用者更快捷的搭建自己的神经网络,堪称深度 ...
- 2023计算机领域顶会(A类)以及ACL 2023自然语言处理(NLP)研究子方向领域汇总
2023年的计算语言学协会年会(ACL 2023)共包含26个领域,代表着当前前计算语言学和自然语言处理研究的不同方面.每个领域都有一组相关联的关键字来描述其潜在的子领域, 这些子领域并非排他性的,它 ...
- 躬身入局,干货分享,2023年春招后端技术岗(Python)面试实战教程,Offer今始为君发
早春二月,研发倍忙,杂花生树,群鸥竟飞.为什么?因为春季招聘,无论是应届生,还是职场老鸟,都在摩拳擦掌,秣马厉兵,准备在面试场上一较身手,既分高下,也决Offer,本次我们打响春招第一炮,躬身入局,让 ...
- CANN训练:模型推理时数据预处理方法及归一化参数计算
摘要:在做基于Ascend CL模型推理时,通常使用的有OpenCV.AIPP.DVPP这三种方式,或者是它们的混合方式,本文比较了这三种方式的特点,并以Resnet50的pytorch模型为例,结合 ...
随机推荐
- 【Linux】5.2 Shell变量
Shell变量 1. shell变量简介 Linux Shell的变量分为,系统变量和用户自定义变量 系统变量: $HOME. $PWD. $SHELL. $USER等等 显示当前shell中所有变量 ...
- Visual Studio Browser Link
用Visual Studio 2013 | 2015(不知道其他版本会不会)创建的项目(WebForm & MVC), 直接运行访问的页面源码会出现如下内容: 而这个莫名其妙多出来的Visua ...
- Javascript try catch finally
很少用到javascript的异常捕获,突然需要,发现挺全的,小小记录下,留爪. 直接打码: //public.js //异常输出 function exception(ex) { console.l ...
- Docker 实用镜像
实用镜像 nginx-proxy nginx-proxy sets up a container running nginx and docker-gen. ...
- 在 VS Code 中,一键安装 MCP Server!
大家好!我是韩老师. 本文是 MCP 系列文章的第三篇.之前的两篇文章是: Code Runner MCP Server,来了! 从零开始开发一个 MCP Server! 经过之前两篇文章的介绍,相信 ...
- SpringBoot启动方法分析
SpringBoot启动run方法分析 1.场景引入 在项目启动的时候,有时候我们需要在启动的时候,执行一些逻辑. 比如说,项目启动的时候,我想把一些热门商品的数据加载到缓存中去: 比如说,自定义了一 ...
- 《数组》--DAY2--快慢指针法
1.什么是双指针? 双指针,指的是在遍历对象的过程中,不是普通的使用单个指针进行访问,而是使用两个相同方向(快慢指针)或者相反方向(对撞指针)的指针进行扫描,从而达到相应的目的. 2.快慢指针 2.1 ...
- public void add(int index, E element)的方法源码分析
public class ArrayList<E> extends AbstractList<E> implements List<E>, RandomAccess ...
- 看了他,妈妈再也不用担心我被问到Mybatis缓存了
Mybatis缓存 一.一级缓存 1. 概念 sqlsession级别的缓存,即缓存的是SQL语句 同一个sqlsession中执行多次查询条件相同的SQL,mybatis会提供一级缓存进行优化 2. ...
- python同时给多个邮箱地址发送邮件
这个帖子内讲了怎么发邮件:https://www.cnblogs.com/becks/p/14589314.html 下图红框内于发送目标邮件地址有关 讲红框内信息修改为下方代码,即可实现向多人发送邮 ...