摘要: 一道很好的构造题 "原题链接" 很快就能想到,捡每个垃圾的能量可以最后再算。然后,对于每个垃圾,在路上耗费的能量仅与它是第几个被捡的有关,于是我们考虑将垃圾分组。 首先,我们定义$F(x,i)$为某次从$0$出发,捡到坐标为$x$的垃圾的次序为$i$的花费,则有: $F(x,i)=\left\{\b 阅读全文
posted @ 2018-09-17 09:36 dummyummy 阅读(329) 评论(0) 推荐(0) 编辑
摘要: 一道很好的单调队列优化多重背包入门题 令$v[i]$表示重量,$w[i]$表示价格 ,$c[i]$表示最多可放的数量,不难推出朴素的转移方程如下: $f[i][j]=max\{f[i 1][j k v[i]]+k w[i]\},j k v[i]\geqslant 0$ 但这样时间复杂度太高了,令$r 阅读全文
posted @ 2018-09-14 09:20 dummyummy 阅读(203) 评论(0) 推荐(0) 编辑
摘要: "原题链接" ~~差不多算自己推出来的第一道题~~QwQ 题目大意 $T$组询问,每次问你$1\leqslant x\leqslant N$,$1\leqslant y\leqslant M$中有多少$(x,y)$满足$gcd(x,y)\in \mathbb{P}$ 数据范围 $T=10000$,$ 阅读全文
posted @ 2018-09-13 16:24 dummyummy 阅读(359) 评论(1) 推荐(2) 编辑
摘要: ~~自己做出来的第一道倍增~~(fake) "原题链接" 看到题目,贪心水题!不仅思维难度低,代码也~~好~~(难)写,三下五除二就写了出来,过了样例。但是一交,只有40pts。一道紫题能让我快速水40pts,良心出题人啊>ω<! 然后我们考虑如何优化这个贪心: 首先我们发现,对于每一个人,在贪心的 阅读全文
posted @ 2018-09-06 09:37 dummyummy 阅读(253) 评论(1) 推荐(0) 编辑
摘要: 这真是道神奇的题目: "原题链接" 首先我们要证明以下的性质: 若原序列为$\{a_n\}$,$a_i$和$a_j$不能同时放入一个栈中,当且仅当$ij$的同时有$a_k using namespace std; define wrap cout G[N+5]; void addEdge(int u 阅读全文
posted @ 2018-09-05 15:39 dummyummy 阅读(479) 评论(0) 推荐(0) 编辑
摘要: "原题" 题目大意: 有$n$个人,起初他们都不是朋友。总共有$m$天,每天会有两个人成为朋友。他们计划在晚上出去旅游,对于一个人,有如下两种情况: 1.要么他不出去旅游 2.要么有至少$k$个朋友跟他一起出去 其中$n,m,k$都会给出 (注意,友谊是非传递性的,比如$a$和$b$是朋友,$b$和 阅读全文
posted @ 2018-09-05 07:26 dummyummy 阅读(256) 评论(0) 推荐(0) 编辑
摘要: "原题" 题目大意: 给你两个长度都为$n$的的$01$串$a,b$,现在你可以对$a$串进行如下两种操作: 1.交换位置$i$和位置$j$,代价为$|i j|$ 2.反转位置$i$ $(0 1, 1 0)$, 代价为$1$ 问你将$a$变成$b$的最小代价是多少。 乍一看,像是dp。但是,仔细想一 阅读全文
posted @ 2018-09-04 21:41 dummyummy 阅读(363) 评论(0) 推荐(0) 编辑
摘要: 哎,被卡科技了,想了三个小时,最后还是大佬给我说是$SG$函数。 $SG$函数,用起来很简单,证明呢?(不可能的,这辈子都是不可能的) $SG$定理 游戏的$SG$函数就是各个子游戏的$SG$函数的$Nim sum$(就是异或和),比如多堆石子的$SG$函数就是所有单堆石子$SG$函数的异或和。 $ 阅读全文
posted @ 2018-09-01 14:10 dummyummy 阅读(337) 评论(0) 推荐(2) 编辑
摘要: 今天打比赛,觉得写法没错,但死活过不了大样例。调试时发现用cin读入一行臭长臭长的string类型变量时出锅了,原来几千个字符就读进来500个,导致一直WAWAWAWAWA。 最后yyj神犇帮我就删掉了一行 然后就A了...... 真是无F可说...... 我的rank啊 阅读全文
posted @ 2018-08-30 15:49 dummyummy 阅读(323) 评论(0) 推荐(0) 编辑
摘要: 遇见的第一道决策单调性优化DP,虽然看了题解,但是新技能√,很开森。 先%FlashHu大佬,反正我是看了他的题解和精美的配图才明白的,%%%巨佬。 废话不多说,看题: 题目大意 已知一个长度为n的序列a1,a2,...,an。 对于每个1 using namespace std; define r 阅读全文
posted @ 2018-08-30 15:29 dummyummy 阅读(353) 评论(0) 推荐(0) 编辑
摘要: 刚学平衡树,分别用了Splay和fhq treap交了一遍。 这是Splay的板子,貌似比较短? Splay cpp include include include include using namespace std; const int N = 100005; int n; int ch[N] 阅读全文
posted @ 2018-07-20 10:16 dummyummy 阅读(253) 评论(0) 推荐(0) 编辑
摘要: 原题链接点这里 今天在课上听到了这个题,听完后觉得对于一道$DP$题目来说,好的状态定义就意味着一切啊! 来看题: cpp 题目描述 为了在即将到来的晚会上有更好的演出效果,作为AAA合唱队负责人的小A需要将合唱队的人根据他们的身高排出一个队形。假定合唱队一共N个人,第i个人的身高为Hi米(1000 阅读全文
posted @ 2018-07-19 18:26 dummyummy 阅读(195) 评论(0) 推荐(0) 编辑
摘要: 看到“你必须用低于你上次购买它的价格购买它”,有没有想到什么?没错,又是LIS,倒过来的LIS,所以我们只要把读入的序列倒过来就可以求LIS了,第一问解决。 首先要厘清的是,对于这一题第二问貌似用$nlog_{2}n$的算法不是很好,因为我们需要序列中每一个位置可以接成LIS的长度。再看看数据范围, 阅读全文
posted @ 2018-07-01 16:22 dummyummy 阅读(207) 评论(0) 推荐(0) 编辑
摘要: 1.设$a,b,c 0$,$abc=1$,求证:$a^2+b^2+c^2\leqslant a^3+b^3+c^3$。 解:不妨设$a\geqslant b\geqslant c$,由切比雪夫不等式,有$a^3+b^3+c^3\geqslant \frac{(a+b+c)(a^2+b^2+c^2)} 阅读全文
posted @ 2018-07-01 13:16 dummyummy 阅读(661) 评论(0) 推荐(0) 编辑
摘要: 突然发现自己把原来学的LIS都忘完了,正好碰见这一道题。| _ | $LIS$,也就是最长上升子序列,也就是序列中元素严格单调递增,这个东西有$n^{2}$和$nlog_{2}n$两种算法,其原理我就不多说了。 注意,本题的一个要点,就是不下降连续子序列的个数等于最长上升子序列的长度。 证明?由Di 阅读全文
posted @ 2018-06-28 15:03 dummyummy 阅读(162) 评论(0) 推荐(0) 编辑
摘要: 对于定义在$\mathbb{N}$上的函数$F(n)$和$f(n)$,若满足: $F(n) = \sum\limits_{d\mid n}f(d)$ 则有: $f(n) = \sum\limits_{d\mid n}\mu(d)F(\frac{n}{d})$ 一个更常用的形式是: 若有: $F(n) 阅读全文
posted @ 2018-06-21 18:49 dummyummy 阅读(213) 评论(2) 推荐(0) 编辑