会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
shuitiangong
博客园
首页
新随笔
联系
订阅
管理
上一页
1
···
7
8
9
10
11
12
13
14
15
···
32
下一页
2020年10月17日
HDU 1540 Tunnel Warfare(线段树区间合并)
摘要: 题目链接 #题目大意 三种操作,破坏一个点,修复最后被破坏的点,询问包含这个点的连续区间的最大长度。 #解题思路 用线段树维护父节点的前缀最长区间和后缀最长区间。 父节点的前缀最长区间最小等于左二子的最长前缀区间,如果左儿子的最长前缀区间是整个区间,那么父节点的最长前缀区间则还可以加上右二子的最长前
阅读全文
posted @ 2020-10-17 21:27 shuitiangong
阅读(126)
评论(0)
推荐(0)
2020年10月16日
POJ 2750 Potted Flower(环形区间最大子段和)
摘要: 题目链接 #题目大意 给一个环,然后求每次修改后的最大子段和,最大子段和不能包含整个子段。 #解题思路 以往解决环形问题都是通过将两个相同的数组拼接起来实现的,但是这个题如果这么写的话要考虑区间长度问题,很麻烦。 有一个巧妙的方法,在维护区间最大子段和的同时,再维护一个区间最小子段和,那么考虑两个数
阅读全文
posted @ 2020-10-16 20:31 shuitiangong
阅读(123)
评论(0)
推荐(0)
2020年10月15日
POJ2828 Buy Tickets(线段树二分)
摘要: 题目链接 #题目大意 有n个人,依次给出这n个人进入队列时前面有多少人p[i],和它的权值v[i],求最终队列的权值序列。 #解题思路 用线段树维护一个数组,最初全是1,代表每个位置有没有人。从后往前推,最后一个人的位置肯定是他最终的位置,然后把他删去,那么消去了最后一个人的影响,倒数第二个人的位置
阅读全文
posted @ 2020-10-15 07:39 shuitiangong
阅读(149)
评论(0)
推荐(0)
2020年10月11日
CodeForces 1272E Nearest Opposite Parity(多源bfs)
摘要: 题目链接 #题目大意 一个数字可以移动到$i+arr[i]$和$i-arr[i]$(合法的话),问每个位置移动到与当前的值奇偶性不同的位置需要的次数。 #解题思路 一个数字可以移动到i+arr[i]和i-arr[i],设$d[i]$表示能到达奇偶性不同的点需要的最小次数,如果这个数一次就可以,那么d
阅读全文
posted @ 2020-10-11 21:31 shuitiangong
阅读(160)
评论(0)
推荐(0)
HDU 6109 数据分割(并查集+启发式合并)
摘要: 题目链接 #题目大意 略 #解题思路 对于相等的关系很好维护,关键是对于不想等的关系。如果$x_i$与$x_j$不相等,那么$x_i$所在集合中的所有点都是和$x_j$所在集合中的所有点不相等的。 把不相等的$x_i$与$x_j$,所在集合的代表结点建一条边,如果$x_i$所在集合要和其他集合合并,
阅读全文
posted @ 2020-10-11 16:45 shuitiangong
阅读(164)
评论(0)
推荐(0)
2020年10月4日
NC13230 合并回文子串(区间dp)
摘要: 题目链接 #题目大意 略 #解题思路 最大回文子串的变形。用dp[i][j][k][l]表示第一个字符串第$ij$这个子段和第二个字符串jk这个子段形成的回文串是否存在,因为两个字符串的组合一共有四种方式,所以转移方式有四种: 1.只有第一个字符串且$s1[i]==s1[j], dp[i][j][k
阅读全文
posted @ 2020-10-04 17:08 shuitiangong
阅读(157)
评论(0)
推荐(0)
NC50439 tokitsukaze and Soldier(贪心)
摘要: 题目链接 #题目大意 略 #解题思路 使用两个优先队列,第一个优先队列以v为第一优先级,s为第二优先级从大到小排序,第二个优先队列以s为第一优先级,v为第二优先级从小到大排序。对于第一个优先队列堆顶的一对(v,s)来说,如果s我们选出的所有数的数量小,就不需要他了,因为我们以v的大小为第一优先级,加
阅读全文
posted @ 2020-10-04 09:37 shuitiangong
阅读(158)
评论(0)
推荐(0)
2020年9月21日
HDU 6411 带劲的and和(并查集+位运算)
摘要: 题目链接 #题目大意 略 #解题思路 n=1e5的数据规模肯定是不能直接枚举两个相连的点的。既然题目中用到了位运算,就要从二进制的角度来考虑。 对于一个连通分量,我们将其中的所有点按照权值排序,这时候再暴力枚举的话,肯定是最大的点和其他点分别来做与运算,然后次大的点和比它小的点做与运算。。。从位运算
阅读全文
posted @ 2020-09-21 17:46 shuitiangong
阅读(175)
评论(0)
推荐(0)
HDU 5444 Elven Postman(二叉树)
摘要: 题目链接 #题目大意 给一个二叉树,第一个点是根,然后优先访问右儿子,然后是左儿子,右儿子的结点编号比父节点小,左儿子的结点编号比父节点大。 #解题思路 从根开始搜索,如果插入的结点比当前结点小,而且右二儿子存在,就访问右儿子,负责插入的点就是右儿子,左儿子也一样。 #代码 const int ma
阅读全文
posted @ 2020-09-21 15:42 shuitiangong
阅读(95)
评论(0)
推荐(0)
2020年9月16日
HDU 2512 一卡通大冒险(第二类stirling数)
摘要: 题目链接 #题目大意 略 #解题思路 分别将n个物品放进1~n个盒子里,且不考虑盒子内的顺序,就是最经典的第二类斯特林数。 #代码 const int maxn = 2e3+10; const int maxm = 1e4+10; int s[maxn][maxn]; int main() { s[
阅读全文
posted @ 2020-09-16 21:41 shuitiangong
阅读(151)
评论(0)
推荐(0)
上一页
1
···
7
8
9
10
11
12
13
14
15
···
32
下一页
公告