其实这套题很好。 但是这次,在T1爆炸的同时,T2和T3并没有出现能弥补的表现。 在AK仍然存在的同时,我居然连一个AC都没有。 所以最后就是一无是处的一场。 考试结束前估分:100+100+30=230 结果T1和T2都没有A。。。 T1乖乖的按照题意打大模拟,没算复杂度,开心的一匹。。。 T2位 ...
分类:
其他好文 时间:
2019-10-27 22:58:22
阅读次数:
98
区间修改: #include<bits/stdc++.h> using namespace std; const int N=1e5+5; int sum[N<<2],lazy[N<<2],a[N]; void pushup(int rt) { sum[rt]=sum[rt<<1]+sum[rt<< ...
分类:
其他好文 时间:
2019-10-26 20:51:14
阅读次数:
104
题目描述 小$P$最近喜欢上了单调数列,他觉得单调的数列具有非常多优美的性质。经过小$P$复杂的数学推导,他计算出了一个单调增数列的艺术价值等于该数列中所有书的总和。并且以这个为基础,小$P$还可以求出任意一个数列的艺术价值,它等于将这个数列顺次划分若干个极长单调区间(相邻两个单调区间的单调性必须不 ...
分类:
编程语言 时间:
2019-10-15 09:50:33
阅读次数:
86
今日写了进阶指南的几个线段树例题。 什么区间gcd+区间修改啊,离散化+扫描线+线段树什么的。 虽然都是经典题,但是还是一堆bug,调来调去一天就过去了555。 下午的时候,昨晚cf的Educational div2出分了,本来卑微3题坐等掉分的,结果惊奇地发现居然还上分了。颇有当年打校赛的感觉—— ...
分类:
其他好文 时间:
2019-10-10 00:11:45
阅读次数:
97
题目链接 思路: 这道题其实还是普通的区间修改和查询问题,只不过序列变为了环形,所以就是小小的改一下就可以了。 分类讨论一下,如果输入的l<r,那么就是照常修改和查询。但由于是环形,所以会出现l>r的地方,其实也就是这样拆成l-n和1-r两个操作即可。 代码,不需要代码,太水了 #include<b ...
分类:
其他好文 时间:
2019-10-06 20:37:06
阅读次数:
105
浅谈树上差分 【引子】 我们遇到一些关于树的问题时,往往需要我们统计一些树上的信息,比如子树和,路径边覆盖、点覆盖(目前没见过别的类型)。暴力的解法当然是遍历逐个点对其权值进行修改。 类比序列问题,其在进行区间修改时,可以用差分将$O(n)$复杂度降为$O(1)$。在树上我们是对一条链进行处理,那差 ...
分类:
其他好文 时间:
2019-10-05 22:47:32
阅读次数:
117
这是Leetcode第307题,给一个数组,然后求指定下标之间的数之和,已知数组中的值可以更新,并且更新和求和操作会被频繁调用。 这是一道线段树的基础题,线段树是一种二叉搜索树。它将一段区间划分为若干单位区间,每一个节点都储存着一个区间。它功能强大,支持区间求和,区间最大值,区间修改,单点修改等操作 ...
分类:
其他好文 时间:
2019-10-05 14:37:10
阅读次数:
79
题目链接 题意: C a b c 【a,b】区间都加c Q a b 查询【a,b】的区间和 题解: 区间修改+区间查询 模板题 代码: #include<iostream> #include<stdio.h> #include<math.h> #include<algorithm> #include ...
分类:
其他好文 时间:
2019-10-02 16:13:36
阅读次数:
76
A.u 只涉及到区间修改可以考虑差分,然而如果每一行都差分复杂度还是过高。我们发现差分标记也是连续的(一行横着的一行斜着的),所以可以维护两个 差分的差分,扫两遍统计即可。 B.v 二进制状压一下当前场上剩余球的状态,记搜即可。记忆化状态需要手写Hash表,直接map会T飞。 另外,在本题中形如00 ...
分类:
其他好文 时间:
2019-09-30 09:36:02
阅读次数:
84
容易理解但是难打(又长又难调) 仅代表个人观点 (能别打就别打) 线段树是什么? 大概长这样?(表示区间1到6) 线段树是一颗二叉树,是通过二分思想建立的一颗表示区间关系的树形结构。(总之记住它很好用就对了) 怎样建一颗线段树 大概思路: 二分+递归 没什么好讲的,具体看代码吧。。 表示区间[1,n ...
分类:
其他好文 时间:
2019-09-17 23:01:35
阅读次数:
222