2021 CCPC 哈尔滨
开场 zsy 签了 J,gjk 签了 B,我读错了 E 的题意,gjk 读对后过了
zsy 读了 K 给我,我记得是模拟赛原题,跟欧拉定理有关,但很难。他俩过了 D I,我大概会了 G 但不会 DP 期望,跟 zsy 无效交流了一会凭感觉写 1A 了。C 好像也是模拟赛原题就丢给他俩了
L zsy 给了不带修的 ACAM 做法并指出相同颜色段可以倍增,我说根号重构一下就能根号 \(\log\) 带修了。吃饭的时候会了单根号,回来他俩过了 H,最后 L 没调出来。以后一定一定要拍,即使只剩 15min
从排名看打得还不错(除了 L),下周就正式赛了,还是比较振奋人心的
C. Colorful Tree
显然每个子树最多被染色一次,且染色顺序是从根到叶子。设 \(f[u,i]\) 表示只考虑子树 \(u\),预先被染成颜色 \(i\) 的答案(\(i=0\) 表示没有被染色)
转移:\(f[u,i]=\sum_{v}\min_{j}\{f[v,j]+[j\ne0\wedge j\ne i]\}\)
key observation:\(f[u,i]\le f[u,0]\)。如果子树 \(u\) 中没有颜色 \(i\),那么 \(f[u,i]=f[u,0]\)
E. Power and Modulo
题意是 \(=\bmod M\) 而不是 \(\equiv\pmod M\)
\(a[1]\ne1\) 的情况平凡,先判掉
\(M\) 一定是 \(2a[i]-a[i+1]\) 的约数,事实上只有不为 \(0\) 的 \(2a[i]-a[i+1]\) 都相等的值才可能是答案。否则就会出现 \(M\le a[i]\) 了
L. Karshilov's Matching Problem
没注意意义不明的 \(\bmod\) WA 了一发
有相同的串,Trie 插入时权值要 += 而不是 =
暴力:对 \(t\) 建 ACAM,用 \(s[1,l]\) 在上面跑顺便统计信息(“信息”指 ACAM 上所处结点和答案)
核心思想:只有前缀询问,考虑维护若干个关键前缀的信息,剩余部分暴力
分块
关键前缀为每个块的右端点,预处理 ACAM 上每个结点走指定字符块长次的信息
调小块长可以减小常数
加强到区间修改:根号重构,空间再付出 \(\sqrt{n}\) 代价
栈+倍增
修改只有后缀覆盖:相同字符段压成一个点,栈维护。关键前缀为每个字符段的右端点
询问时先在栈上二分,找到 \(l\) 之前的第一个关键前缀,剩下的部分与 \(l\) 处于同一字符段,倍增
2021 CCPC 哈尔滨的更多相关文章
- 2017 ccpc哈尔滨 A题 Palindrome
2017 ccpc哈尔滨 A题 Palindrome 题意: 给一个串\(T\),计算存在多少子串S满足\(S[i]=S[2n−i]=S[2n+i−2](1≤i≤n)\) 思路: 很明显这里的回文串长 ...
- 2021 CCPC 威海站 VP记录(题解)
2021 CCPC 威海站 VP记录(题解) 题目顺序为vp时开题顺序: A - Goodbye, Ziyin! 签到,连边数小于等于2的可以作为二叉树根,若有大于4的直接输出0. code: voi ...
- HDU 6240 Server(2017 CCPC哈尔滨站 K题,01分数规划 + 树状数组优化DP)
题目链接 2017 CCPC Harbin Problem K 题意 给定若干物品,每个物品可以覆盖一个区间.现在要覆盖区间$[1, t]$. 求选出来的物品的$\frac{∑a_{i}}{∑b_ ...
- 2017 CCPC 哈尔滨站 题解
题目链接 2017 CCPC Harbin Problem A Problem B Problem D Problem F Problem L 考虑二分答案. 设当前待验证的答案为x 我们可以把第二 ...
- 2017 CCPC 哈尔滨站 HDU 6242
Geometry Problem Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 262144/262144 K (Java/Other ...
- CCPC哈尔滨E题
一堆序列拼接起来,找出现次数大于n/2的数 假设一个数出现次数大于n/2 那么它减去其他数出现的次数一定非负: = c) { cnt += t[i]; } } } } //cout<<c& ...
- 2021 CCPC女生赛
newbie,A了五题铜牌收工 比赛时和队友悠哉游哉做题,想着干饭,最后幸好没滚出铜尾. 贴一下比赛过的代码 A题 签到 队友A的,判断正反方向序列是否符合要求 /*** * @Author: _Kr ...
- CCPC、Petrozavodsk Camp、OpenCup 题解汇总
省赛 \([\text{2021.11.30}]\) 2021 Jilin Collegiate Programming Contest 全部完成. \([\text{2021.12.25}]\) 2 ...
- CCPC 2017 哈尔滨 L. Color a Tree && HDU 6241(二分+树形DP)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6241 题意:给你一棵有 n 个结点的树,每个结点初始颜色都为白色,有 A 个条件:结点 x_i 的黑色 ...
- CCPC 2017 哈尔滨 D. X-Men && HDU 6233(思维+期望)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6233 题意:一个树上有m个人,每个人在某个节点上,每个时刻每个人可以和一个与他距离大于 1 的点进行交 ...
随机推荐
- Java基础:throw和throws的详解
总结来说,throw是用来抛出一个具体的异常实例,而throws是用来声明方法可能会抛出哪些类型的异常,是对调用者的一种通知和要求. 1. throw 作用: throw关键字用于在方法体内实际抛出一 ...
- spring与设计模式之四适配器模式
一.定义 适配器模式-或者称为转接口模式,变压器模式.通过适配,可以让原来提供特定功能的对象完成另外一个标准的功能. 所以,所谓的适配应该可以这样称呼:让某些类/接口适配/转换某个标准/功能. 适配器 ...
- MYSQL8.0-JSON函数简单示例-JSON_EXTRACT|JSON_VALUE|JSON_TABLE
JSON类型在日常应用开发中,用得很少,个人通常用于存储常常变化的配置参数. 它适用于什么业务场景,不好说.就好像许多年前读到的一篇文章,说有个国外公司利用ORACLE的CLOB/BLOB管理一些信息 ...
- C#中关于 object,dynamic 一点使用心得
首先说一下使用场景 WebAPI接口入参使用 object和 dynamic 后续解析和处理 1.object和dynamic 区别 在.NET中,object和dynamic也有一些区别: obj ...
- 单芯片国产ARM+FPGA,复旦微FMQL20SM工业核心板正式发布!
- SpringBoot快速插入Mysql 1000万条数据
导读 有时候为了验证系统瓶颈,需要往数据库表中插入大量数据,可以写sheel脚本插入,前几天为了插入100万条数据,走的sheel脚本(点我直达),插入速度简直无法直视,花了3小时,才插入了10万条, ...
- 论文阅读: 面向Planning的端到端智驾Planning-oriented Autonomous Driving
原文地址:https://arxiv.org/abs/2212.10156 背景 当代自动驾驶系统多采用序列化的模块化的任务处理方式,比如感知.预测.规划等.为了处理多样的任务.达到高水平智能,当代智 ...
- opc ua设备数据 转MQTT项目案例
目录 1 案例说明 1 2 VFBOX网关工作原理 1 3 准备工作 2 4 配置VFBOX网关采集OPC UA的数据 2 5 用MQTT协议转发数据 4 6 配置参数说明 4 7 上报内容配置 5 ...
- django python 循环一个月的每一天
from datetime import datetime, timedelta def get_dates_in_month(year, month): start_date = datetime( ...
- [oeasy]python0127_中文系统_gbk_BIG5_南极星_内码转化
中文系统bgk 回忆上次内容 汉字字形通过 点阵式打字机 像素级寻址的屏幕 进入了计算机的世界 添加图片注释,不超过 140 字(可选) 在海峡对岸的台湾同胞 也进入了汉字时代 他 ...