摘要: [TOC] 链接 "luogu" "bzoj" 思路 区间dp 然后$f[i][j][k]$ 区间$[i,j]$能否变成$k$字符 (字符当然得转化一下) 字符的个数不多,直接暴力$check$,暴力转移就行,$%%gzy$ 区间dp还是挺套路~~模板~~的 只不过看着恶心,其实真不恶心 代码 cp 阅读全文
posted @ 2018-10-15 10:45 ComplexPug 阅读(149) 评论(6) 推荐(1) 编辑
摘要: 链接 "链接" 思路 好久之前的考试题了吧,之前貌似抄的题解 现在理解了~~怕忘了~~,就写个题解记录一下吧,题目还是不错的 枚举中间点j $$H_{i} H_{j}=H_{j} H_{k}$$ $$H_{k}+H_{i}=2 H_{j}$$ 由于H是一种n的排列,所以取值就是$[1,n]$ 那就可 阅读全文
posted @ 2018-10-14 20:07 ComplexPug 阅读(241) 评论(0) 推荐(1) 编辑
摘要: 题目链接 and 题目大意 "hdu3698" 但是 hdu的数据比较弱,所以在这luogu提交吧 "UVA1490 Let the light guide us" 有一个$n m$的平原,要求每行选一个点,选$n$个点建造塔楼。 平原上每个点都有他自己的花费时间和魔法值。 为了正确控制塔楼,我们必 阅读全文
posted @ 2018-10-12 09:12 ComplexPug 阅读(187) 评论(0) 推荐(0) 编辑
摘要: 题目链接 "loj" 思路 亲戚很少,可以每个点都算一遍单源最短路 然后dfs 错误原因 算错复杂度 cpp include include include include using namespace std; const int inf = 0x3f3f3f3f; const int maxm 阅读全文
posted @ 2018-10-10 18:53 ComplexPug 阅读(403) 评论(1) 推荐(0) 编辑
摘要: 题目 "loj链接" 思路 瞎jb写,考试最后5min找到bug,考玩10minAC,成功GG 这题没啥算法(感觉跟dp有点关系?) 他们说正解是单调队列,鬼知道咋用,反正我是O(n) 题目数据最大好像是1e5,大家也可以写个O(nlogn)的水一水拉 就是预处理个 f1 ,f2,代码里的注释很详细 阅读全文
posted @ 2018-10-10 17:57 ComplexPug 阅读(397) 评论(0) 推荐(0) 编辑
摘要: 题目&&链接 反正数据都是一样的,luogu比较友好 "luogu" "bzoj" lxhgww最近收到了一个01序列,序列里面包含了n个数,这些数要么是0,要么是1,现在对于这个序列有五种变换操作和询问操作: 0 a b 把[a, b]区间内的所有数全变成0 1 a b 把[a, b]区间内的所有 阅读全文
posted @ 2018-10-10 10:09 ComplexPug 阅读(127) 评论(0) 推荐(0) 编辑
摘要: "题目链接" 咳咳咳,第一次没大看题解做DP 以前的我应该是这样的 哇咔咔,这tm咋做,不管了,先看个题解,再写代码 终于看懂了,卧槽咋写啊,算了还是抄吧 第一问类似于noip的那个跳房子,随便做 这里重点讲第二问 首先,不会做,那就先写暴力 dp当然得写dp暴力了 $f[k][i]$ 表示选择了k 阅读全文
posted @ 2018-10-09 19:15 ComplexPug 阅读(192) 评论(0) 推荐(0) 编辑
摘要: 乍一不咋会 ╭(╯3╰)╮ 把地雷L到R看成一条线段 要求的就是区间内有多少条线段经过 很明显是要用[1,R]内的起点个数 [1,L 1]的终点个数 然后这起点和终点个数可以用简单的差分线段树来维护一下 其实树状数组更适合一些 cpp include include include include 阅读全文
posted @ 2018-10-09 14:55 ComplexPug 阅读(148) 评论(0) 推荐(0) 编辑
摘要: "luogu链接" 题目大意: 有一个节点有颜色的树 操作1.修改子树的颜色 操作2.查询子树颜色的种类 注意,颜色种类小于60种 只有子树的操作,dfs序当然是最好的选择 ~~dfs序列是什么,懒得讲了,自己搜吧~~ 然后开两个数组,begin_和end_记录节点子树在dfs序数组中的开头和结尾 阅读全文
posted @ 2018-10-09 06:19 ComplexPug 阅读(150) 评论(0) 推荐(0) 编辑
摘要: 前言 spoj需要FQ注册,比较麻烦,大家就在 "luogu" 评测吧 题目大意: $n$ 个数,$q$ 次操作 操作$0 _ x_ y$把$A_x$ 修改为$y$ 操作$1 _ l _r$询问区间$[l, r]$ 的最大子段和 思路 维护一个区间的$sum,lmax,rmax,max$ 就是区间和 阅读全文
posted @ 2018-10-08 19:49 ComplexPug 阅读(196) 评论(0) 推荐(0) 编辑
摘要: 题目大意 "题目链接Naive Operations" 题目大意: 区间加1(在a数组中) 区间求ai/bi的和 ai初值全部为0,bi给出,且为n的排列,多组数据(0时 显然、对答案没有贡献 当区间内的mi include include define ls rt '9'; s = getchar 阅读全文
posted @ 2018-10-08 16:38 ComplexPug 阅读(148) 评论(0) 推荐(0) 编辑
摘要: 题目大意 多次操作 查询并修改区间内长度==len的第一次出现位置 修改区间,变为空 思路 类似于求区间最大子段和(应该是这个吧,反正我没做过) 维护区间rt的 从l开始向右的最长长度 从r开始向左的最长长度 l到r内的最长长度 反正维护的是个01序列, 随便做 又是小错误,第一遍就能过非得debu 阅读全文
posted @ 2018-10-08 11:07 ComplexPug 阅读(113) 评论(0) 推荐(0) 编辑
摘要: 建议去 "uoj" 那里去测,数据比较强 位运算的题目,就得一位一位的分开考虑 然后枚举初始值的最高位是0 是1 的最终攻击 (二进制内)最高位是1肯定比次位是1次次位是1次次次位是1···的大吧,显然 然后贪心O(N)就能过去啦 感觉自己是学傻了,看到n=5w就写了个nlog 情况好像有某一位的初 阅读全文
posted @ 2018-10-08 08:44 ComplexPug 阅读(153) 评论(0) 推荐(0) 编辑
摘要: 思路&心路 一眼认定沙比提 写的比较慢,写了1小时吧 开心的交上去 卧槽,只有20? 不服不服,拿着题解的代码去对拍 Emma, include define ll long long define ls rt '9' || s = '0' && s 1; build(l,mid,ls); buil 阅读全文
posted @ 2018-10-07 20:41 ComplexPug 阅读(175) 评论(0) 推荐(0) 编辑
摘要: 结构体线段树原来正确率比用数组的高啊,原来用数组写的线段树写挂的结构体竟然过了,哇咔咔 以后就转坑结构体线段树了 cpp include include define ll long long using namespace std; const int maxn = 1e5 + 7; const 阅读全文
posted @ 2018-10-07 16:31 ComplexPug 阅读(135) 评论(0) 推荐(0) 编辑