会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
返回顶部
Rayotaku
我们一日日度过的所谓日常,实际上可能是接连不断的奇迹
博客园
首页
新随笔
联系
订阅
管理
上一页
1
···
7
8
9
10
11
12
13
14
15
···
52
下一页
2021年6月8日
Educational Codeforces Round 110 (Rated for Div. 2) C. Unstable String (dp)
摘要: 题意:有一$01$串,$?$既可以表示成$0$也可以表示成$1$,问其所有子串中,问有多少不出现相邻相同字符的子串。 题解:根据题意,合法串一定0101这样的,那么当前位置的1/0肯定是从上个位置的0/1转移过来,如果上个位置的字符和当前相同,那么就重新开始。由此可以写出状态转移方程:\(dp[i]
阅读全文
posted @ 2021-06-08 00:48 _Kolibri
阅读(63)
评论(0)
推荐(0)
2021年6月4日
Codeforces Round #723 (Div. 2) D. Kill Anton (字符串构造,全排列)
摘要: 题意:有一字符串,可以将其任意排序,构造完后可以相邻字符两两交换位置,花费为$1$,构造一个复原成原串花费最多的串。 题解:感觉还是不好证明啊,结论就是相同的字符连续在一起一定最优,因为最多只有$4$个字符,所以我们可以全排列,花费就是相对于原串的逆序对数,这里官方题解给的暴力求逆序对的方法感觉很巧
阅读全文
posted @ 2021-06-04 21:51 _Kolibri
阅读(66)
评论(0)
推荐(0)
Codeforces Round #502 (in memory of Leopoldo Taravilse, Div. 1 + Div. 2) D. The Wu (状压,预处理)
摘要: 题意:有一长度均相同的$01$串集合,每次询问给你一个同长度的$01$串,去和集合中的每个$01$串匹配,若位置$i$的元素相同,则贡献加$w_i$,输出集合中有多少串匹配完后贡献不大于$k$。 题解:集合中元素很少,最多$12$个。先用桶标记集合中的串,然后$O((1<<n)^2)$预处理所有情况
阅读全文
posted @ 2021-06-04 21:33 _Kolibri
阅读(52)
评论(0)
推荐(0)
2021年6月1日
AtCoder Beginner Contest 203(Sponsored by Panasonic)D - Pond (二分答案,矩阵前缀和)
摘要: 题意:有$n$x$n$的矩阵,用$k$x$k$的小矩阵去遍历整个矩阵,求所有$k$x$k$矩阵中遍历时的最小中位数. 题解:二分答案.将原矩阵根据二分的值变成01矩阵,如果元素值不小于$x$就变为$1$,否则就是$0$.对于某个$k$x$k$的小矩阵,统计它的元素和,如果它的和$sum<\lfloo
阅读全文
posted @ 2021-06-01 02:40 _Kolibri
阅读(207)
评论(0)
推荐(0)
AISing Programming Contest 2021(AtCoder Beginner Contest 202) E - Count Descendants (dfs,思维)
摘要: 题意:有一颗树,根结点为$1$.$q$个询问,每次问你共有多少经过$u$点且到根节点距离为$d$的点. 题解:这题技巧性好强,我们从根节点遍历整颗树,用时间轴记录搜到和离开的时间$in_i$和$out_i$,同时存入同一深度的所有$in_i$,方便后面计算.对于某个父亲结点$u$,它的一个子树结点为
阅读全文
posted @ 2021-06-01 02:19 _Kolibri
阅读(73)
评论(0)
推荐(0)
西电2021校赛选拔赛 C.扶梯问题 (贪心,枚举)
摘要: 题意:有$n$个人轮流上电梯,电梯送完一个人需要$1$个时刻.电梯有待机和运行两种状态,待机每时刻消耗$E_2$电量,运行每时刻消耗$E_1$电量,若电梯无人使用经过$k$个时刻后会变为待机状态,从待机状态变成运行状态需要消耗$E_3$电量,你可以自定义$k$的值,求出最后一个人走完后的最小消耗总电
阅读全文
posted @ 2021-06-01 01:51 _Kolibri
阅读(98)
评论(0)
推荐(0)
2021西电校赛网络选拔赛 D.咕的头发问题 (dp)
摘要: 题意:有$n$个数,可以使任意两个子数组(不重叠)的元素贡献*2,问你操作后整个数组的最大元素和是多少. 题解:假如我们只能操作的一次的话,这题完全可以转换为求最大子段和,即先求出所有元素和,然后再加上最大子段和即可,但是现在我们需要求出两个最大子段和,也就意味着在操作一次的基础上,可以使区间断开分
阅读全文
posted @ 2021-06-01 01:25 _Kolibri
阅读(65)
评论(0)
推荐(0)
2021年5月31日
LibreOJ 数列分块入门 1-9
摘要: 数列分块入门1-9 1. #6277. 数列分块入门 1 分析:分块基本操作,对于整块直接打上标记,询问的时候加上对应块的标记值即可. 代码: #include <bits/stdc++.h> #define ll long long #define fi first #define se seco
阅读全文
posted @ 2021-05-31 20:21 _Kolibri
阅读(83)
评论(0)
推荐(0)
2021年5月25日
Manthan, Codefest 18 (rated, Div. 1 + Div. 2) D. Valid BFS? (排序,bfs)
摘要: 题意:有一颗树,你需要从根节点开始bfs,将搜到的点按顺序放入栈中,给你一个序列,你需要判断这个序列是否是某一种栈的情况. 题解:存一下序列中每个值的位置,然后对于每个父亲结点,按照所存每个值的位置对儿子进行排序,最后跑bfs判断即可. 代码: #include <bits/stdc++.h> #d
阅读全文
posted @ 2021-05-25 18:00 _Kolibri
阅读(45)
评论(0)
推荐(0)
Codeforces Round #722 (Div. 2) C. Parsa's Humongous Tree (树形dp)
摘要: 题意:有一颗树,每个结点都有一个取值范围$[L_i,R_i]$,答案为所有相邻点的绝对值之差之和,现在要你确定每个点的值,求最大答案. 题解:求相邻点的最大绝对值之差,那么肯定是取两个点的左端点和右端点最优,树形dp板子题. 代码: #include <bits/stdc++.h> #define
阅读全文
posted @ 2021-05-25 17:33 _Kolibri
阅读(140)
评论(0)
推荐(0)
上一页
1
···
7
8
9
10
11
12
13
14
15
···
52
下一页