该文被密码保护。
posted @ 2019-07-11 23:56 Jack_Pei 阅读(4) 评论(0) 编辑
该文被密码保护。
posted @ 2019-03-15 00:25 Jack_Pei 阅读(6) 评论(0) 编辑
该文被密码保护。
posted @ 2019-03-13 23:10 Jack_Pei 阅读(3) 评论(0) 编辑
摘要: Life and Death 生与死 I strove with none, 我和谁都不争, for none was worth my strife, 和谁争我都不屑; Nature I loved, 我爱大自然, and next to Nature, Art; 其次就是艺术; I warmed阅读全文
posted @ 2019-03-05 21:32 Jack_Pei 阅读(138) 评论(0) 编辑
摘要: 基本思路:点分治,是一种针对可带权树上简单路径统计问题的算法。对于一个节点,只解决经过这棵子树的根节点的路径,对于子节点问题下推子树。阅读全文
posted @ 2019-07-15 19:50 Jack_Pei 阅读(6) 评论(0) 编辑
摘要: 思路:二分+最短路 提交:1次 题解: 二分最后的答案。 $ck()$: 对于每次的答案$md$跑$s,t$的最短路,但是不让$c[u]>md$的点去松弛别的边,即保证最短路不经过这个点。最后$return\space dis(s,t)<=$油箱容量 代码: 2019.07.15阅读全文
posted @ 2019-07-15 00:02 Jack_Pei 阅读(7) 评论(1) 编辑
摘要: 思路:二分+贪心 提交次数:10次以上 错因:刚开始以为二分(边界,$+1or-1$)写错了,调了半天,后来才发现是$ck()$写错了。开始只判了最后是否小于零,而应该中间一旦小于零就$return\space false$ 题解: 二分天数(单调性显然)。 $ck(int x)$: 首先$x$天内阅读全文
posted @ 2019-07-14 23:55 Jack_Pei 阅读(7) 评论(0) 编辑
摘要: 思路:整体二分 提交:4次 错因:树状数组开的$int$ 题解: 二分操作序列,将仅用$[l,md]$即可满足要求的国家递归到左半边,将仅用$[l,md]$不能满足要求的国家,把他们的要求去掉左半边的贡献,递归到右半边。 具体来说,开一个以空间站为下标的树状数组(把环展成链),区间加单点求和转化为差阅读全文
posted @ 2019-07-14 23:46 Jack_Pei 阅读(5) 评论(0) 编辑
摘要: 思路:找规律?$or$贪心。 提交:1次 题解: 发现:若可以构成$X0000$,答案绝对不会再在数字最后把$0$改成其他数; 若可以构成$XX50...0$更优。 所以左端点增加的步长是增加的($inc=pow(10,x),x$递增)。 所以去掉了一些不必要的枚举。阅读全文
posted @ 2019-07-14 23:33 Jack_Pei 阅读(4) 评论(0) 编辑
摘要: 思路:按位贪心。 提交:1次 题解: 可以先处理出对于全$0$串和全$1$串最后每一位的结果。(每一位 从 $0$ $or$ $1$ 变成 $0$ $or$ $1$) 对于每一位,若不能变成$1$,则不选; 若可以变成$1$,优先让$0$变成$1$(使代价尽量小);若不能让$0$变成$1$,则$1$阅读全文
posted @ 2019-07-14 23:27 Jack_Pei 阅读(6) 评论(0) 编辑
摘要: 题意: Description 有n件商品,选出其中的k个,要求它们的总价为奇数,求最大可能的总价。 有n件商品,选出其中的k个,要求它们的总价为奇数,求最大可能的总价。 Input 第一行一个整数n(1<=n<=1000000),表示商品数量。接下来一行有n个整数,表示每件商品的价格,范围在[1,阅读全文
posted @ 2019-07-14 13:11 Jack_Pei 阅读(5) 评论(0) 编辑
摘要: 题意:给出$n$个物品的体积和最大背包容量$m$,求去掉一个物品$i$后,装满体积为$w\in [1,m]$背包的方案数。 有 N 个物品, 体积分别是 W1, W2, …, WN。 由于她的疏忽, 第 i 个物品丢失了。 “要使用剩下的 N – 1 物品装满容积为 x 的背包,有几种方法呢?” —阅读全文
posted @ 2019-07-14 12:29 Jack_Pei 阅读(5) 评论(0) 编辑
摘要: 题意: 旋转A,B,C,D,一并带着相邻的四个数字旋转。 给定初始状态,求在给定次数下,能否到达如figure(a)的状态。 输入:十位字符串,第一位为给定次数,后九位为初始状态。 提交次数:3次(然鹅洛谷上的remotejudge一直CE) 错误:mxd初值设成了1,qwq 题解: 思路:搜索,I阅读全文
posted @ 2019-07-14 00:00 Jack_Pei 阅读(4) 评论(0) 编辑
摘要: 沿用了学长的$multiset$ 然后这道题可以看到我的程序中有两行注释,它在我看来和他们下面的代码没区别,但是我们发现,C++会先调用后面的参数,所以$--it$会被先执行 。。。 。。。 。。。 维护两个数组,$a[]$和$b[]$表示每一段开头的元素和结尾的元素。 在更新相邻差值的时候,只用考阅读全文
posted @ 2019-07-11 16:42 Jack_Pei 阅读(6) 评论(0) 编辑
摘要: 其实可以二分矩阵边长但是我太懒了$qwq$。 把每个子矩阵扔到$map$里,然后就没了 2019.07.11阅读全文
posted @ 2019-07-11 16:18 Jack_Pei 阅读(6) 评论(0) 编辑
摘要: 首先$LIS$显然:$f[i][j]=max(f[i][j-1],f[i-1][j],(a[i]==b[j])*f[i-1][j-1])$ 考虑如何转移数量: 首先,不管$a[i]$是否等于$b[j]$, 都有$h[i][j]+=h[i-1][j]*(f[i][j]==f[i-1][j])+h[i]阅读全文
posted @ 2019-07-11 16:15 Jack_Pei 阅读(7) 评论(0) 编辑
摘要: 我的天。。普及组这么$hard$。。。 然后好像没有人用我的垃圾做法,,,好像是$O(n)$,但十分的慢,并且极其暴力$qwq$ 具体来说,就是直接$dfs$求出树高,然后想像出把原来的树补成满二叉树的形态 $like\space this:$ 震不震惊$qwq$ 然后对子树哈希,同时保存正向的哈希阅读全文
posted @ 2019-07-09 00:05 Jack_Pei 阅读(8) 评论(0) 编辑
摘要: 刚开始写了个没迭代的。。。结果过了$qwq$ 然后迭个代。。更快了。。 2019.07.03阅读全文
posted @ 2019-07-03 20:00 Jack_Pei 阅读(8) 评论(0) 编辑
摘要: 开一个单调队列,下标递增,值递减。 然后在上面二分最大数。 如果加上并查集可以做到接近线性。 还有一种是插入一个数然后,从后向前更新ST表。 ST表: 2019.07.03阅读全文
posted @ 2019-07-03 19:53 Jack_Pei 阅读(7) 评论(0) 编辑
摘要: 卸载:把子树清空; 安装:把自己到$1$的链改为$1$ 2019.07.03阅读全文
posted @ 2019-07-03 19:18 Jack_Pei 阅读(6) 评论(0) 编辑
摘要: RT. 2019.07.03阅读全文
posted @ 2019-07-03 19:14 Jack_Pei 阅读(11) 评论(0) 编辑
摘要: 只会两个$log$的$qwq$ 我们二分答案:设答案为$ans$,则我们把$a[i]<=ans$全部设成$0$,把$a[i]>ans$全部设成$1$,扔到线段树里,这样区间排序(升序)就是求出$[l,r]$中$0$(或$1$)的个数$cnt$,然后对区间$[l,l+cnt-1]$赋值为$0$,对$[阅读全文
posted @ 2019-07-03 19:11 Jack_Pei 阅读(9) 评论(0) 编辑
摘要: 标准的带修莫队。。。咕到了现在$qwq$ 莫队是对询问排序来优化复杂度的(不带修就是对询问区间$[l,r]$排序)。。 那么现在带修了,我们再可以维护一个时间维度$tm$:对于每个询问,每次回答前先检查时间指针是否与询问的时间对应,不对应则按操作时间修改。 2019.07.03阅读全文
posted @ 2019-07-03 16:28 Jack_Pei 阅读(5) 评论(0) 编辑
摘要: 这才是真正的$N\sqrt{N}$吧$qwq$ 记录每个数$vl$出现的位置$s[vl]$,和每个数$a[i]=vl$是第几个$vl$,记为$P[i]$,然后预处理出块$[i,j]$区间的答案$f[i][j]$; 对于$[l,r]$,现将$ans$设为$[l,r]$中整块的答案;对于散块,将散块中的阅读全文
posted @ 2019-07-03 14:46 Jack_Pei 阅读(6) 评论(0) 编辑