Lectures
Copy and Paste 3(P9523)
Problem

Solution

- 转移方程中的“父问题枚举子问题寻找转移”可以转成“子问题寻找父问题主动转移”处理
Goldfish and pikes(qoj1249)
Problem

Solution

- “大鱼吃小鱼”的题目,必然考虑值域倍增的性质
- “不断操作直至停止”的题目,考虑通过性质将操作分段,每段中有较好的性质(如为一区间等)
Easy Jump(gym103687E)
Problem

Solution

- 如果有大致的贪心策略,形如某种情况下用第一种策略,其余情况用第二种,则可以二分/枚举这个阈值进行处理
Student's Camp(CF708E)
Problem

Solution

- 要求区间相交时的容斥技巧:区间必须相交不好刻画,条件较多;但是区间不交很好刻画:\(r_a<l<b\) 或 \(r_b<l_a\),至多有一个成立,因此可以很好地容斥。
Tiger 机(P9379)
Problem

Solution

- “多次询问同一贪心过程得到的结果”的题目,可以考虑计算出每一条转移边(而不是点)的贡献,然后对每次询问,只用统计每条边贡献的系数即可。
Subset(gym103428B)
Problem

Solution

- 反演思想:如果通过 \(f\) 的方案数能推出 \(g\) 的方案数,则若转移矩阵可逆,则 \(g\) 的方案数也能推出 \(f\) 的方案数。说起来挺蠢的,但是容斥是可以这样解释的。下次到底用 \(-1\) 的几次方不好理解的时候就这样想吧。不过反演思想除了对容斥起作用也可以在类似这样的题里起作用:选出集合 \(\rightarrow\)(乘上阶乘)\(\rightarrow\) 选出不可重序列 \(\rightarrow\)(用性质映射)\(\rightarrow\) 选出可重序列 \(\rightarrow\) dp 处理
Alice、Bob 与 DFS(loj3633)
Problem

Solution

- SG 函数的拓展:SG 函数是可以定义在集合上的,所以如果我们规定的游戏是“\(i\) 可以转移到 \(\{R_i\}\) 或集合 \(S\)”,则可以把它变成在 \(\mathbb{N}\setminus S\) 上的游戏“\(i\) 可以转移到 \(\{R_i\}\)”,然后在这个集合上用 SG 定理,此时用于异或的值应该是第 \(k\) 小中的 \(k\)。
Just Kingdom (CF1578J)
Problem

Solution

- 形如“一个初始状态至少要多大,才能使末状态满足条件”的题,可以考虑倒推。很多题都要想到倒推。
- 对于“不断操作,每次加上 \(\max(A_i,B_i)\)”之类的问题,一定要记得值域倍增的技巧,只考虑值域没有倍增的情况如何快速转移!(上面的吃鱼题系列也都是这种技巧)
Wall Painting (PTZ winter 2020 Day2 C, Qoj1189)
Problem

Solution


- 关于线段覆盖最优化的题目,似乎要么是可以证明区间互不包含最优(此时可以扫右端点维护左端点处理),要么可以证明区间不部分相交最优(此时区间之间的关系形成一棵树)。立个 flag,以后注意看看是不是区间题都是这样的。
Square Constraints (AGC036F)
Problem

Solution


- 关于排列的 dp 问题,主要是两种形式:一种是相对大小的限制,一种是上界的限制。前者我们主要用的是按值域插入的方式,几乎别无良法;后者我们主要用的是 \(\prod (A_i-i+1)\) 的方式,也几乎别无良法。这道题显然属于后者,所以我们只能考虑 \(\prod (A_i-i+1)\)。为此我们必须将上界进行排序,同时我们对下界毫无办法,所以我们必须容斥,于是下界就变成了上界,题目就可做了。事实上这个思路可能应该是必然的,因为面对这样的问题我们应该没有别的路。
Cupboards Jumps (CF1500F)
Problem

Solution

- 非常典的题,技巧就是先求出一种比较简单清晰的 dp 形式,然后尝试用
set维护 dp 值,如果整个 dp 都形如 \(f_{x,i}\rightarrow f_{x+1,i+j}\) 之类的良好形式,则可以很好地用 set 打标记转移。
Tenzing and Random Operations (CF1842G)
Problem

Solution

- 拆括号的技巧。当遇到 \(\prod a_i\) 的期望的时候,可以考虑拆括号,然后计算括号中的每一项出现的概率。
1st ucup stage 20 E Strange Keyboard
Problem

Solution


- 字典树上所有子树的叶子个数之和是 \(O(\sum |s_i|)\) 的,这是一个有用的结论,值得记下来。
- 同余最短路也有很深刻的性质:我们只关心边的集合而不关心走的顺序!所以同余最短路可以做到 \(O(nm)\),其中 \(n\) 为环长,\(m\) 为不同的边权数量。写法为沿着环推两遍即可。
2nd ucup stage 6 K Jump Graph
Problem

Solution

- 关于这样的“两两之间的权值”的问题,注意一定要能够倒过来思考。例如这题,题面是“\(u\) 到所有点的距离和”,要想到把这个权值倒过来,考虑每个点对每个 \(u\) 贡献多少,然后发现这个贡献的形式很好。所以我们可以将这个贡献改成由 \(v\) 节点给 \(u\) 节点贡献,可以发现这样的贡献形式要好很多,是形如一个不断扩张的区间的形式,因此这道题就可以通过不断跳区间解决。
2nd ucup stage 6 B The Doubling Game 2
Problem

Solution



- 在树上的随机选顺序的问题,
Lectures的更多相关文章
- UVA 607 二十二 Scheduling Lectures
Scheduling Lectures Time Limit:3000MS Memory Limit:0KB 64bit IO Format:%lld & %llu Submi ...
- zoj1183 Scheduling Lectures
这道题题意不想说了,跑了640ms,感觉水过去了,应该能通过单调队列优化,很长时间没碰已经不知道怎么写了,就说说现在的写法吧. 状态定义很关键:dp[i][j]把前j个topic放在前i堂课. 因为这 ...
- (转)A curated list of Artificial Intelligence (AI) courses, books, video lectures and papers
A curated list of Artificial Intelligence (AI) courses, books, video lectures and papers. Updated 20 ...
- 递推DP UVA 607 Scheduling Lectures
题目传送门 题意:教授给学生上课,有n个主题,每个主题有ti时间,上课有两个限制:1. 每个主题只能在一节课内讲完,不能分开在多节课:2. 必须按主题顺序讲,不能打乱.一节课L时间,如果提前下课了,按 ...
- ZOJ-1183-Scheduling Lectures
可以用贪心求最小讲课次数,贪心策略也很好想,就是对于任意主题,能早讲就早讲.这种方案的讲课次数一定是最少的,但是不满意指标不一定是最小,然后再利用动态规划求在最少讲课次数前提下的最小不满意指标. 方法 ...
- [RN] 02 - Overview: React Native Practice of 50 lectures
观看笔记:零基础 React Native 实战开发视频 50讲 本篇效果:RN入门,整体认识 基本原理 # 1 React到RN # 2 一个简单的例子 /** * Sample React Nat ...
- CF1463E Plan of Lectures
考虑我们两种操作: 我们把第一种操作在\(x\to y\)连一条权为-1的边. 第二种操作\(x\to y\)连-1,\(y\to x\)连1的边. 当无法操作则是环里有负环. 否则我们把第二种操作涉 ...
- 计算机人物系列-Mauchly,Eckert,Goldstine
关键词:莫尔学院(Moore School),阿伯丁试验场(Aberdeen Proving Ground), 雷明顿兰德公司(Remington Rand Corporation), IBM院士(I ...
- 【深度学习Deep Learning】资料大全
最近在学深度学习相关的东西,在网上搜集到了一些不错的资料,现在汇总一下: Free Online Books by Yoshua Bengio, Ian Goodfellow and Aaron C ...
- xv6的作业翻译——作业1 - shell和系统调用
Xv6的lecture LEC 1 Operating systems L1: O/S overview L1:O/S概述 * 6.828 goals 6.828的目标 Understan ...
随机推荐
- 面向对象的Python编程,你需要知道这些!
摘要:Python 没有像 java 中的"private"这样的访问说明符.除了强封装外,它支持大多数与"面向对象"编程语言相关的术语.因此它不是完全面向对象 ...
- 毕昇 JDK:为啥是ARM 上超好用的 JDK
摘要:毕昇 JDK 是华为基于 OpenJDK 定制的开源版本,是一款高性能.可用于生产环境的 OpenJDK 发行版. 本文分享自华为云社区<[云驻共创]毕昇 JDK:"传奇再现&q ...
- Solon cloud 常用配置
一.配置示例: solon: app: name: "solon-consul-test" group: "test" solon.cloud.consul: ...
- 只需 3 步,人人都能搭建自己的 chatgpt 微信机器人
大家好,我是徐公,大厂 6 年经验,CSDN 博客专家.最近,ChatGpt 很火,身边的人都在讨论,会不会成为下一个风口,像前几年互联网一样,迎来井喷式的发展. 徐公我最近也是在密切关注,最近,在 ...
- RPC 框架性能测试,注意这 8 点就够了
某天,二狗子写了一个 RPC 框架后,简单测了一下性能,发现超出 grpc 一大截.二狗子一高兴,忍不住找同事吹了一波.结果,同事亲测后对二狗子说框架性能也就这样.二狗子表示不服,跟同事一番唇枪舌剑后 ...
- kafka集群三、增加密码验证
系列导航 一.kafka搭建-单机版 二.kafka搭建-集群搭建 三.kafka集群增加密码验证 四.kafka集群权限增加ACL 五.kafka集群__consumer_offsets副本数修改 ...
- vue计算属性computed传参
需求:根据不同的状态status,显示不同颜色的边框
- 简易机器学习笔记(九)LeNet实例 - 在眼疾识别数据集iChallenge-PM上的应用
前言 上一节大概讲了一下LeNet的内容,这一章就直接来用,实际上用一下LeNet来进行训练和分类试试. 调用的数据集: https://aistudio.baidu.com/datasetdetai ...
- 如何学习 Photoshop
你有没有想过"图像处理或图形设计看起来很酷,我要学习 Photoshop!" 然后你第一次打开 Photoshop,并被你所看到的东西所震撼. Photoshop 是一款功能强大的 ...
- 无法访问Github仓库的极简治标法
技术背景 由于IP原因,国内的IP访问Github仓库的时候会经常遇到一些困难,甚至存在无法Ping通的情况.尝试过FastGithub等方案,但还是会遇到各种各样的问题,导致情况越来越复杂. 但是转 ...