zP1nG

Only the Paranoid Survive.

Markdown编辑公式

拿小本本记下来。。。

2017-12-27 21:00:53

阅读数:139

评论数:0

【NOIp 2017】小凯的疑惑(置顶)

无数人被小学奥数坑到家破人亡,我也不例外。 在此发博文告诫自己无论什么题目都要冷静思考,简单的题目不要想复杂,沉着冷静才能做到最好。 我爱OI,自然要爱屋及乌。我爱小学奥数。#include<bits/stdc++.h> using namespace std; int main(...

2017-11-27 09:26:40

阅读数:3674

评论数:0

【bzoj 2260】商店购物 & 【bzoj 4349】最小树形图 (朱刘算法)

传送门biu~biu~ 只需要考虑第一次购买的顺序,然后剩下需要买的都按最小价格买。设一个虚拟节点0,原价购买i物品就从0向i连边,u对v有优惠关系就从u向v连边。跑朱刘算法即可。...

2018-05-18 15:06:39

阅读数:16

评论数:0

【bzoj 2795】A Horrible Poem(字符串哈希)

传送门biu~ 如果一个长度为l的串s的循环节为n,那么需要满足n是l的约数且s[1,l-n]=s[1+n,l]。 所以对于每一个询问,枚举每个质因子,用哈希判断字符是否相等。 #include&amp;lt;bits/stdc++.h&amp;gt; #define N 5...

2018-05-18 14:48:18

阅读数:8

评论数:0

【bzoj 3555】企鹅QQ(字符串哈希)

传送门biu~ 枚举不看字符串的每一位,用字符串哈希匹配。但是单模会WA,改成双模才能过。 #include&amp;lt;bits/stdc++.h&amp;gt; #define N 30005 #define base1 137 #define base2 19260...

2018-05-16 20:29:00

阅读数:15

评论数:0

【bzoj 3245】最快路线(最短路)

传送门biu~ dis[i][j]代表到第i个点速度为j时需要的最少时间,spfa转移即可。 #include&amp;amp;amp;amp;amp;lt;bits/stdc++.h&amp;amp;amp;amp;amp;gt; #define pa pair&...

2018-05-14 11:40:49

阅读数:24

评论数:0

【bzoj 2653】middle(二分+可持久化线段树)

传送门biu~ 先二分答案,对于二分出的答案x,在序列中把大于等于x的值改为1,小于x的值改为-1,那么求区间[a,d]包含[b,c]的最大连续子段和,如果大于等于0说明答案大于等于x,如果小于0说明答案小于x。可以证明经过二分最后得到的答案一定在区间中。 我们可以对每个x序列建一棵线段树维护...

2018-05-14 11:35:06

阅读数:19

评论数:0

【bzoj 3990】排序(DFS)

传送门biu~ 显然一个操作序列是否合法与操作序列的顺序是无关的,所以我们只需要知道某种操作选不选即可。可以从小操作向大操作枚举,这样一个合法的操作序列对答案的贡献为选择的操作数的阶乘。 对于第i种操作我们将序列分成2n−i段2n−i段2^{n-i}段,每段长度2i2i2^i。找到序列中不递增...

2018-05-02 18:24:49

阅读数:31

评论数:0

【bzoj 4631】踩气球(链表+线段树合并)

传送门biu~ 先用链表将原序列链在一起,每次一个点的值被减至0时将这个点从链表中删除。即用链表维护每一个点左右第一个值不为0的点。 对于序列上的每一个点开一个值域为[1,n]的权值线段树。对于每个熊孩子区间[l,r],将l作为权值加入线段树r中。当一个点x的值被减至0并将被从链表中删除时,假...

2018-04-25 15:26:45

阅读数:19

评论数:0

【bzoj 1922】大陆争霸(Dijkstra堆优化)

传送门biu~ 对于每个节点,dis1表示走到这个点的最早时间,dis2代表解除了有关这个点的所有限制的最早时间,所以每个点最早到达时间为max(dis1,dis2)。在Dijkstra时,每到一个节点,就解除这个点对其它点的保护,当一个点的所有限制都被解除时,可以入堆。 #include...

2018-04-23 22:47:48

阅读数:19

评论数:0

【bzoj 2563】阿狸和桃子的游戏(贪心乱搞)

传送门biu~ 把每条边的边权平分给它连的两个点。因为最终求的是比分的差值,所以如果两个点被同一个人选取,那么这个人就会得到这条边的边权;如果被两个人选取,两个人的分值作差时会把边权这部分抵消掉。按大小顺序依次选取即可。 #include&amp;lt;bits/stdc++.h&am...

2018-04-20 07:53:34

阅读数:25

评论数:0

【bzoj 2073】PRZ(状压DP)

传送门biu~ 把当前过去了哪些人进行状态压缩,枚举当前状态走的最后一批人来转移。 #include&amp;lt;bits/stdc++.h&amp;gt; #define inf 0x3f3f3f3f #define lowbit(x) (x&amp;amp;(-x...

2018-04-18 23:28:00

阅读数:20

评论数:0

【bzoj 4919】大根堆(set启发式合并)

传送门biu~ 假设是在序列上,就变成了nlogn的dp求最长上升子序列问题;假设是在树上,我们只需要在每个节点存下dp数组,然后用set的启发式合并将dp数组合并就可以了(代替Splay)。 #include&amp;lt;bits/stdc++.h&amp;gt; #...

2018-04-13 16:22:53

阅读数:20

评论数:0

【bzoj 5216】公路建设(线段树+Kruskal)

传送门biu~ 用线段树维护使用编号在[l,r]内的道路最终会选择哪些道路。即线段树每个节点记录一个边的集合,集合大小显然不超过n。 在合并两个区间的时候采用Kruskal用归并的方式合并(暴力)。 #include&amp;lt;bits/stdc++.h&amp;gt; ...

2018-04-12 11:04:21

阅读数:26

评论数:0

【bzoj 5201】Connections(强连通分量)

传送门biu~ 只要跑一边Tarjan,记录选择了哪些树边和返祖边就好了。因为对于每个点,所选的与这个点相连的边的数量不会超过2,所以最终选择的边数一定少于2n。最后随便加边使边数到达2n即可。 ps.因为最后整个图也一定是强连通图,所以在Tarjan的时候完全不用stack和low[]。随便...

2018-04-12 10:54:10

阅读数:22

评论数:0

【bzoj 5281】Talent Show(分数规划的背包dp验证)

传送门biu~ #include&amp;lt;bits/stdc++.h&amp;gt; #define N 255 #define maxw 1005 using namespace std; const double eps=1e-6,inf=1e6; int n,W,...

2018-04-11 19:19:03

阅读数:29

评论数:0

【bzoj 4976】宝石镶嵌(贪心、高位前缀和)

传送门biu~ 当n-k&amp;gt;=16时,每一位上的1都可以出现,只需要考虑每位是否有1即可。 剩下的情况n最大只有115(数据范围瞬间变得友善了)。 令f[state]代表组合出state最少需要多少个数,跑背包即可。然后再将f[state]更新成组合出包含state这个集...

2018-04-11 17:12:29

阅读数:17

评论数:0

【bzoj 4975】区间翻转(博弈论)

传送门biu~ 考虑序列中顺序对的个数。 ① 对于终止态,顺序对一定为0(偶数),此时先手必败。 ② 对于翻转的区间[l,r],可以视作将[l,r]内的顺序对数和逆序对数调换。 ③ 因为区间长度为4x+2或4x+3,带入可知区间内的数对数(即顺序对数+逆序对数)为奇数。 综上可知,令当前...

2018-04-11 16:44:56

阅读数:17

评论数:0

《我的兄弟叫顺溜之这尼玛也能翻盘》——HLOI2018游记

副标题:《做了多少好事才能使一个noip335分省Rank14的菜比选手人品爆发省选翻盘混进省队A类》 Day0: 在火车上度过了大部分的时间。靠在Dilhao身上睡觉可以舒舒服服地度过半程。考前和BlackJack互奶实测有奇效。 Day1: 早晨自然醒,...

2018-04-08 02:15:21

阅读数:92

评论数:0

【bzoj 4887】可乐(Floyd+快速幂)

传送门biu~ 可以建一个虚拟节点表示自爆,虚拟节点不连出边。计算矩阵t次幂后1到每个节点的方案数和。 #include&amp;lt;bits/stdc++.h&amp;gt; using namespace std; const int mod=2017; int n,...

2018-03-31 16:36:34

阅读数:22

评论数:2

提示
确定要删除当前文章?
取消 删除
关闭
关闭