随笔分类 -  随笔

上一页 1 2 3 4 5 6 7 8 9 ··· 12 下一页
摘要:link 不难,挺基础的dp。考场上纠结能不能选用空子矩阵,然后纠结着纠结着有些东西就飘了,导致第一个sub里手抖死掉了。70分,好冤啊。 就很简单,考虑到给定的矩阵列数只有1或2。1的情况随便怎么动规都可以,2的情况要额外维护最后一行的状态方便转移(共5个状态),注意f的初值即可。但它似乎没卡空矩 阅读全文
posted @ 2022-07-05 14:18 Feyn618 阅读(15) 评论(0) 推荐(0) 编辑
摘要:link 并不难的构造题。 实在不行可以观察数据。某一列的数字对应下来是会有规律的,都是从0到n-1,再从n-1到0,循环往复,只不过每一位的循环节长度不一样。这也很好理解,因为每一个数和前一个数只会有一个数字不一样,所以它肯定是这样的变化形式。然后输出就可以了。考场上debug了整整半个小时。维生 阅读全文
posted @ 2022-07-05 14:10 Feyn618 阅读(33) 评论(0) 推荐(0) 编辑
摘要:link 和NOI2021的轻重链那道题写法上几乎一样,可以看成是轻重链是这道题套了个外壳。这道题问法还更直接一点,除了维护的东西变成了不相同的相邻元素对的个数,其它的代码层面几乎是一样的。然而傻逼的我还是调了许久。一是树链剖分线段树的初值应该是对应id的值,二是edge数组应该开成两倍。我也不知道 阅读全文
posted @ 2022-07-04 17:23 Feyn618 阅读(26) 评论(0) 推荐(0) 编辑
摘要:link 去年NOI的D1T1。其实感觉也没有那么难。 主要是如何快速修改路径上点的非路径连边。一个一个修改是不可能的,只能把边的修改转化成点的修改。于是想到每次修改都给路径上的点赋一个从未出现的颜色值,这样一来路径边和其它边就区分出来了:路径边的两端颜色相同,而其它边则两端颜色不同(这就体现出找从 阅读全文
posted @ 2022-07-04 17:17 Feyn618 阅读(30) 评论(0) 推荐(0) 编辑
摘要:link 要求写一个数据结构,支持区间加,区间翻转,查询区间最大值。 没有动态插入和动态删除我不是很认可,还什么“序列终结者”,常用的都没有包含完。 就是板子。要注意的是一个点的最大值等于左右孩子的最大值和自己的data再取一次最大值(我也不知道当时脑子是怎么抽掉的)。另外就是pushup和push 阅读全文
posted @ 2022-07-04 11:03 Feyn618 阅读(23) 评论(0) 推荐(0) 编辑
摘要:link 要求写一个数据结构,支持区间删除、区间插入,区间查询。这不是平衡树是什么。 坑点有点多。首先空格也会被当成是一种文本输入并存储,调试的时候我一度认为是哪里出bug了(data一栏是……啥都没有?|)。还有就是数组要开大一点,不知道为什么要开到2e6。然后就是在做区间插入的时候最好把插入的序 阅读全文
posted @ 2022-07-04 09:37 Feyn618 阅读(18) 评论(0) 推荐(0) 编辑
摘要:link 一道并不难的贪心题。 首先会发现这k次机会肯定是用在一个元素身上最好啊,反正是按位或,最大的那个数肯定是越大越好。但是不是把最大的数拎出来然后给它机会呢?交了一发死得很惨。前半段的贪心是正确的,但后半段有问题。于是可以枚举得到机会的元素是哪个,然后暴力(维护前后缀即可)求出答案,取最大值即 阅读全文
posted @ 2022-07-03 22:09 Feyn618 阅读(29) 评论(0) 推荐(0) 编辑
摘要:link 题意是:写一个数据结构,支持区间翻转,支持查找元素位次,支持删除。这就是平衡树的板子嘛,而且甚至没有插入操作。这就好办啦,我写的是splay,最近重拾平衡树代码也打得愈发顺手了…… 鉴于昨天打维护序列打崩溃,总结一下关于区间翻转的几个重要的点。一个是在调用任何节点时(特别是find)一定要 阅读全文
posted @ 2022-07-03 22:06 Feyn618 阅读(25) 评论(0) 推荐(0) 编辑
摘要:link 一道奇怪的构造题。还以为比较困难,结果解法十分简单粗暴。kang完题解直呼咋这么暴力啊。 就很朴素的想法。假如每个元素都只有一个连通块,那很简单,直接输出四个大大的方阵即可。但很明显出题人没有这么善良,那么我们需要做的就是去其它地方挖出一些连通块来。最简单的方法就是隔一个方块挖一个连通块, 阅读全文
posted @ 2022-07-03 21:59 Feyn618 阅读(61) 评论(0) 推荐(0) 编辑
摘要:link 挺水一题。 由于不强制在线,可以把所有操作读入之后,把最后的数组处理出来了再考虑答案(主要是平衡树动态维护LIS一时没想到怎么做)。显然有结论,第i次的答案可以看成是最后数组剔除掉所有大于i的数剩下的序列的LIS,而所有大于i的数是不会被小于等于i的数吸纳的,所以第i次的答案相当于是最后数 阅读全文
posted @ 2022-07-02 17:29 Feyn618 阅读(17) 评论(0) 推荐(0) 编辑
摘要:link 平衡树的一点小变通。 要求支持一些操作:询问序列第k个元素是什么,询问元素k在序列中的位置,把一个元素放到序列最前面或最后面,交换两个元素(insert 操作说白了就是交换这个元素和它前面或后面的元素交换)。 第一个和最后一个还好,其它操作有点麻烦。问题就在于要把节点的点值和节点的编号 阅读全文
posted @ 2022-07-02 16:43 Feyn618 阅读(9) 评论(0) 推荐(0) 编辑
摘要:link 一道很有价值的DP题,而且运用了根号分治的思想。 假如数据范围不大,就像sub1一样,可以直接把可能出现的所有质数压到一个int上之后,用 f[i][j] 来代表第一个人吃了集合i的质数,第二个人吃了集合j的质数时的方案数。使用刷表法从前往后更新,每个数有选和不选两种决策,注意取模和龙龙宝 阅读全文
posted @ 2022-07-02 15:03 Feyn618 阅读(30) 评论(0) 推荐(0) 编辑
摘要:link 只在UOJ上找到了。考试的时候一脸懵逼,到现在找规律,发现可以 O(1) 两行水过。 #include<cstdio> int main(){int m,n;scanf("%d%d",&m,&n);printf("%d",m==1?1:(n<m-n+1?n:m-n+1)*2);} 但为 阅读全文
posted @ 2022-07-01 15:05 Feyn618 阅读(39) 评论(0) 推荐(0) 编辑
摘要:link 题意是给定一个无向图,边有边权。求解一条连接指定两个点的路径使得路径上最大边和最小边的比值最小。 很明显发现边数很小,甚至可以 O(M2) 跑过去。于是考虑每次枚举最短边,然后递增地枚举比它长的边一直到指定的两个点联通为止。考场上脑抽了写了个dfs,为了实现它还在删边上耗费了点时间。 阅读全文
posted @ 2022-07-01 13:35 Feyn618 阅读(27) 评论(0) 推荐(0) 编辑
摘要:link 又是一道虚高的紫题。 题意是说给定一棵树,树上一些点为特殊点,求到所有特殊点的距离均不超过给定值的点的个数。 换根的板子。对于每个点维护在子树内离自己最远的特殊点和第二远的特殊点,用 O(N) 的时间求出根节点的信息;然后二次换根,每个节点考虑父亲的最远点是否来自自己的子树,如果是就取 阅读全文
posted @ 2022-06-30 19:58 Feyn618 阅读(28) 评论(0) 推荐(0) 编辑
摘要:link CF的题总是很良心的。比如这道题完全够不到紫题的难度,充其量一个绿题嘛。就是一个倍增,同时维护元素和和元素最小值的倍增数组,一次询问就可以了。 注意要开long long,而且CF上要用 printf("%I64d"); 输出long long。 代码异常简单。 #include<bits 阅读全文
posted @ 2022-06-30 19:53 Feyn618 阅读(30) 评论(0) 推荐(0) 编辑
摘要:link 搜索中迭代加深的技巧。迭代加深是解决一类答案深度不大、但搜索树可能很深(甚至无限深)、用广搜还不是很好解决的问题。方法是枚举答案的深度,通过限制搜索树深度的方法达到解决问题的目的。 比如这道题。分解得到的分数数量可能非常多,但答案的数量不会太大,就可以通过迭代加深加剪枝的方法进行。 #in 阅读全文
posted @ 2022-06-30 19:50 Feyn618 阅读(14) 评论(0) 推荐(0) 编辑
摘要:link 用 fi 来代表准备照第 i 面镜子,照完所有镜子的期望天数。有 : fi={f1+1(p=1pi)\fi+1+1(p=pi) 两种可能。于是就有: $$f_i=(1-p_i)f_1+p_if_{i+1} 阅读全文
posted @ 2022-06-30 14:54 Feyn618 阅读(13) 评论(0) 推荐(0) 编辑
摘要:link 容斥好题。 由子集反演公式可得: f(n)=i=nmCing(i)g(n)=i=nm(1)inCinf(i) 用f函数代表有至少n个非平局的方案,g代表恰好有n个平局的方案,发现f和g满足前面的 阅读全文
posted @ 2022-06-29 19:40 Feyn618 阅读(12) 评论(0) 推荐(0) 编辑
摘要:link 推柿子。 令 f(i)=1i2,g(i)=qi 。特别地,认为 f(0)=0 。 $$E_j=\sum\limits_{i=0}^{j-1}\frac{q_i}{(i-j)^2}-\sum\limits_{i=j+1}^n\frac{q_i}{(i-j)^2} 阅读全文
posted @ 2022-06-29 16:10 Feyn618 阅读(61) 评论(0) 推荐(0) 编辑

上一页 1 2 3 4 5 6 7 8 9 ··· 12 下一页
点击右上角即可分享
微信分享提示