07 2022 档案

摘要:E 容易发现,我们在一个点进行修改,一定可以将经过这个点的非法路径数变成0。具体的方案就是将i异或上2pi,其中pi>30,并且p要两两不同。(比如pi=30+i就是一组可行的p) 此时我们有一个贪心策略:为了让更多非法路径变成合法的,那么我们修改 阅读全文
posted @ 2022-07-23 10:43 Nastia 阅读(38) 评论(0) 推荐(0) 编辑
摘要:快速读入 namespace zdy{ #define ll int #define pob (fwrite(fob::b,sizeof(char),fob::f-fob::b,stdout),fob::f=fob::b,0) #define pc(x) (*(fob::f++)=(x),(fob: 阅读全文
posted @ 2022-07-22 15:06 Nastia 阅读(36) 评论(0) 推荐(0) 编辑
摘要:D 枚举max,让min最大 假设当前max=v,于是对于0ai<v+1的数,pi=1。 那么对于v+1ai<2(v+1)的数,首先pi2(否则最大值就不是v了),并且我们想让最小值大,故我们取pi=2。 我们可 阅读全文
posted @ 2022-07-21 22:51 Nastia 阅读(24) 评论(0) 推荐(0) 编辑
摘要:E 一道DP题。 首先发现我们有最优解的策略:一定是在后面删掉一些数(用left和delete),然后用(home)到开头,再从前面删掉一些数(用right和delete)。 那么我们可以设f(i,j)表示我们使用s中前i个字符,最后成为t的前j个字符,并且光标最后在i字符之 阅读全文
posted @ 2022-07-15 16:41 Nastia 阅读(23) 评论(0) 推荐(0) 编辑
摘要:这题有一些前置知识:有源汇有上下界最大流。 首先,如果r<b,那么我们希望r更多;否则我们希望b更多。其实如果r<b,那么我们可以将r看成1b看成0,目标是那么我们相当于将贡献从rb变成了01。 那么考虑一个有上下界的最大流: 我们对于每行、每列 阅读全文
posted @ 2022-07-14 14:45 Nastia 阅读(21) 评论(0) 推荐(0) 编辑
摘要:G Ex 分类讨论。 我们设cnt(i)表示数字i出现的次数。 若cnt(i)n,那么我们可以直接暴力枚举出发和到达点,用组合数算出路径数。 否则这样的i一定不超过n个,故我们可以枚举cnt(i)>ni。设当前i=now。 设f(i,j)表示起点在$( 阅读全文
posted @ 2022-07-10 20:27 Nastia 阅读(45) 评论(0) 推荐(0) 编辑
摘要:这题的思路很清晰,和这题类似。 我们先考虑不将它重复k次,即字符串S所有的方案的和的平均数。 首先,若没有?=2,那我们将每两个不同的字符的贡献看成12,由于若相邻的不同的个数为奇数时要向上取整,我 阅读全文
posted @ 2022-07-09 20:00 Nastia 阅读(17) 评论(0) 推荐(0) 编辑
摘要:感觉APIO2022的最后一题就是从这题改来的,简化了一些后又加上了一些奇怪的优化。 首先我们将这题转成和APIO2022一样的格式——如果我们将最终答案分为两个部分,前半部分有n个上升子序列,并且值域在1m,后半部分是1,2,3,...,m的序列。不难发现这个构造出的序列一定有$ 阅读全文
posted @ 2022-07-07 18:56 Nastia 阅读(27) 评论(0) 推荐(0) 编辑
摘要:这题和 https://atcoder.jp/contests/abc189/tasks/abc189_f 是相似的。 首先我们设f(mask,number)表示考虑若干个数,目前出现的差在mask中,最后一个数是number时,数列的期望长度。 但是我们发现这样比较难以转移,因为我们不 阅读全文
posted @ 2022-07-07 15:28 Nastia 阅读(17) 评论(0) 推荐(0) 编辑
摘要:一开始我们能发现答案和时间没有关系。(因为时间是300秒,而一共最多就100个数,不会出现炸弹还能摧毁,但是超过引爆时间的现象)问题得到简化。 之后我的思路有些偏。我想用类似DP+乱搞或模拟退火的方式,用正确性换时间复杂度正确,但是是没有用的。(DP主要是太慢而不正确;模拟退火是没法较好处理 阅读全文
posted @ 2022-07-06 14:18 Nastia 阅读(97) 评论(0) 推荐(0) 编辑
该文被密码保护。
posted @ 2022-07-05 22:47 Nastia 阅读(0) 评论(0) 推荐(0) 编辑
摘要:这么难的题出在ABC真的好吗? 首先是一波推式子,假设我们选的骰子集合为D=i1,i2,...,ik(这里D储存的是骰子的下标),那么我们不难列出下面的式子: $$ E_{D}=\frac{1}{6^k}\sum_{j1,j2,...,jk} (A_{i1,j1}+A_{i2,j2}+. 阅读全文
posted @ 2022-07-04 00:03 Nastia 阅读(66) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示