Solution Set -「NOIP Simu.」20221014
\(\mathscr{A}\sim\)「Unknown」tothecrazyones
有 \(n\) 堆石子, 第 \(i\) 堆有 \(a_i\) 个. Alice 和 Bob 轮流抓取, Alice 每次从至少一堆石子中每堆拿走恰好 \(x\) 个, Bob 每次从至少一堆石子中每堆拿走恰好 \(y\) 个, 不能操作者负. 求胜者.
多测, \(\sum n\le5\times10^5\), \(x,y,a_i\le10^9\).
Tag:「水题无 tag」
经验使然, 先 \(a_i\gets a_i\bmod (x+y)\), 后面的结论好说, 只要 \(\sum[a_i\ge x]>0\) 且 \(\sum[a_i\ge x]\ge\sum [a_i\ge y]\) 就 Alice 必胜, 否则 Bob 必胜. 大样例测过就交了, 所以签到比较迅速. 证明的 \(\bmod (x+y)\) 的正确性并不复杂, 这里就咕啦.
\(\mathscr{B}\sim\)「Unknown」vmefifty
给定 \(\{a_n\}\), 每次可以删除相邻且值不同的一对 \(a_i\) 和 \(a_{i+1}\), 求至少删多少次让 \(\{a_{n'}\}\) 全部相同.
多测, \(T\le5\), \(n\le2\times10^3\).
Tags:「A.DP-杂项」「C.性质/结论」
如何判断 \(a[\ell:r]\) 能否被删空? 显然, 充要条件是 \(2\mid(r-l+1)\) 且 \(a[\ell:r]\) 中不存在严格众数.
那么这里就有一个暴力 \(\mathcal O(n^3)\) DP, 令 \(f(i,j)\) 表示将 \(a[1:i]\) 处理直至所有值为 \(j\), 最多保留多少个值. 转移时枚举最近一段删除区间.
优化? 注意到 \([x,y]\) 可删且 \([y+1,z]\) 可删 \(\Rightarrow [x,z]\) 可删, 而转移 \(f\) 时我们只关心是否有 \(a_i=j\). 也就是说, 只要一段区间里没有 \(j\), 我们没必要去考虑怎么一点一点把区间删掉, 而只是在意这段东西被删完后, 我下一个能去到的 \(a_i=j\) 在哪里. 因此我们只需要对 \(a_i=j\) 的位置做 \(f(i,j)\) 的转移. 这样复杂度就是 \(\mathcal O(Tn^2)\) 了.
\(\mathscr{C}\sim\)「CF 662C」Binary Table
\(\mathscr{D}\sim\)「CF 1034C」Region Separation
Link.
Tag:「水题无 tag」
检查一下 \(1\sim n\) 里 \(\sum a\) 的因子是否合法, 在固定每个连通块点权后, 划分方案若存在则唯一. 之后 \(\mathcal O(n\log n)\) DP 一下切分方案数即可.
Solution Set -「NOIP Simu.」20221014的更多相关文章
- 「NOIP 2017」列队
题目大意:给定一个 $n times m$ 的方阵,初始时第 $i$ 行第 $j$ 列的人的编号为 $(i-1) times m + j$,$q$ 次给出 $x,y$,让第 $x$ 行 $y$ 列的人 ...
- 「NOIP 2020」微信步数(计数)
「NOIP 2020」微信步数(Luogu P7116) 题意: 有一个 \(k\) 维场地,第 \(i\) 维宽为 \(w_i\),即第 \(i\) 维的合法坐标为 \(1, 2, \cdots, ...
- Diary / Solution Set -「WC 2022」线上冬眠做噩梦
大概只有比较有意思又不过分超出能力范围的题叭. 可是兔子的"能力范围" \(=\varnothing\) qwq. 「CF 1267G」Game Relics 任意一个 ...
- Solution Set -「ARC 107」
「ARC 107A」Simple Math Link. 答案为: \[\frac{a(a+1)\cdot b(b+1)\cdot c(c+1)}{8} \] 「ARC 107B」Quadrup ...
- 「NOIP 2013」 货车运输
题目链接 戳我 \(Solution\) 这一道题直接用\(kruskal\)重构树就好了,这里就不详细解释\(kruskal\)重构树了,如果不会直接去网上搜就好了.接下来讲讲详细过程. 首先构建\ ...
- Solution Set -「ABC 217」
大家好屑兔子又来啦! [A - Lexicographic Order] 说个笑话,\(\color{black}{\text{W}}\color{red}{\text{alkingDead} ...
- Note -「动态 DP」学习笔记
目录 「CF 750E」New Year and Old Subsequence 「洛谷 P4719」「模板」"动态 DP" & 动态树分治 「洛谷 P6021」洪水 「S ...
- Note -「Lagrange 插值」学习笔记
目录 问题引入 思考 Lagrange 插值法 插值过程 代码实现 实际应用 「洛谷 P4781」「模板」拉格朗日插值 「洛谷 P4463」calc 题意简述 数据规模 Solution Step 1 ...
- Solution -「ARC 104E」Random LIS
\(\mathcal{Description}\) Link. 给定整数序列 \(\{a_n\}\),对于整数序列 \(\{b_n\}\),\(b_i\) 在 \([1,a_i]\) 中等概率 ...
- LOJ #2026「JLOI / SHOI2016」成绩比较
很好的锻炼推柿子能力的题目 LOJ #2026 题意 有$n$个人$ m$门学科,第$ i$门的分数为不大于$U_i$的一个正整数 定义A「打爆」B当且仅当A的每门学科的分数都不低于B的该门学科的分数 ...
随机推荐
- 手把手教会你使用Markdown【从入门到精通一篇就够了】
目录 一.Markdown是什么 二.Markdown优点 三.Markdown的基本语法 3.1 标题 3.2 字体 3.3 换行 3.4 引用 3.5 链接 3.6 图片 3.7 列表 3.8 分 ...
- Git操作【常用操作命令】
Git操作指令 1. git init 初始化一个git 仓库: 2. git add test.txt 添加一个文件到仓库,可以添加多个,一空格隔开: 3. git commit -m " ...
- 用文字“画出”时序图:用 AI+Mermaid.js 解决交互过程中的问题
什么是时序图 序列图是一种用于描述对象之间在时间上的交互顺序的图表. 它可以展示对象之间是如何相互作用的,以及这些交互的顺序. 什么是Mermaid Mermaid.js是一个开源项目,它允许你通过简 ...
- git安装-Tortoise git 安装汉化教程
1.首先下载 去官网下载 如果下载比较慢的,链接自取 https://pan.quark.cn/s/fcb9d0b39c7f 2. 安装git 3. 安装git图形化工具Tortoise git 4. ...
- 什么DevOps方法论?
最近项目组事情越来越多,人员管理和项目事项管理成为了重点关注的问题,无意间听到同事间讨论DevOps方法论可以有效提升项目管理能力,实现组织精益化管理,运维一体化.于是我上网查了一下"Dev ...
- 重温c语言之,7天开整,就是随便的写写,第三天+第四天版
一:指针 1.关于指针的含义---粗略 例如:int a=10; int* p=&a; 这里的*,是说明p是指针变量,int 说明p是指向的对象是int类型的 *p=20, 这里的*是解引用符 ...
- 2022年3月(202203)小米路由R3G(3G)刷openwrt和padavan的总结
本篇文章是本人这2天刷小米路由R3G的记录,中间可能有很多错误,欢迎留言指出. 1.千万别断电 2.刷机的时候要多等待 小米路由很多型号有着很强的可玩性,128M以上的ROM,256M以上的内存,R3 ...
- ubuntu 下做反向代理给hyperf使用
使用hyperf的时候发现它监听9501端口,然后这样需要ip+port方式去访问,但是这样对用户而言有点不太友好,如果我们还有域名,可以做一个反向代理避免端口直接写出来. 找了找网上别人写的例子,感 ...
- 高性能计算-openmp-图像卷积滤波算法(12)
1. 目标:使用openmp实现图像滤波算法 给定一个输入图像,你的任务是将其划分为多个块,并使用多个进程对每个块进行滤波操作. 要求: 1.使用分段并行结构和指令section来并行执行不同的计算步 ...
- 微信小游戏sdk接入支付和登录,解决了wx原生不支持ios支付的痛点
前情提要 微信小游戏是小程序的一种. 项目接入微信小游戏sdk的支付和登录.主要难点在于接入ios的支付.因为官方只支持android, 不支持ios. 即ios用户不能直接在小游戏中发起支付,参考市 ...