分治
_xgcxgc
一名热爱看番的OIer,
热爱OI,
热爱二次元,
热爱这个世界。
展开
-
Codeforces Round #512 Div. 1 B. Vasya and Good Sequences 分治
Description 给你一个序列,问有多少个区间[l,r]满足l~r的每一个数01随意排列异或和为0。 Sample Input 3 6 7 14 Sample Output 2 你可以发现一个性质: 一个区间内的数总和为偶数,且总和大于最大的数乘二就肯定满足条件,根据这个进行分治即可。 好像还是可以直接DP的,设f[i][j]为枚举到第i个数有j个1未配对的情况,转移即可。 我写的是分...原创 2018-09-24 17:36:27 · 267 阅读 · 0 评论 -
51Nod 1555 布丁怪 分治
Description 一个n * n的矩阵有n个节点,它们纵坐标和横坐标互不相同,问有多少个k*k的矩阵存在有k个元素且每行每列互不相同。 Sample Input 5 1 1 4 3 3 2 2 4 5 5 Sample Output 10 问题可以变为问一个序列中有多少个子序列里面的数编号连续。 考虑分治,维护最大值最小值,分情况讨论。 1.最大值和最小值都在右边 这时只可能会出现一种...原创 2018-09-24 19:37:35 · 192 阅读 · 0 评论 -
[Coci2015]Norma 分治
Descripition 给定一个正整数序列,求: ∑ni=1∑nj=i(j−i+1)min(i,j)max(i,j)∑i=1n∑j=in(j−i+1)min(i,j)max(i,j)\sum_{i=1}^{n}\sum_{j=i}^{n}(j-i+1)min(i,j)max(i,j) Sample Input 4 2 4 1 4 Sample Output 109 ...原创 2018-09-10 17:14:43 · 221 阅读 · 0 评论 -
51nod1472取余最大值 分治
Description 有一个长度为n的数组a,现在要找一个长度至少为2的子段,求出这一子段的和,然后减去最大值,然后对k取余结果为0。 问这样的子段有多少个。 Sample Input 4 3 1 2 3 4 Sample Output 3 考虑分治, 对于最大值分情况讨论一下即可。 #include <cstdio> #include <cstring> us...原创 2018-09-22 16:31:24 · 194 阅读 · 0 评论