分治
文章平均质量分 81
九野的博客
这个作者很懒,什么都没留下…
展开
-
Codeforces 414C Mashmokh and Reverse Operation 归并排序在线求交换序列后逆序数
题目链接:http://codeforces.com/contest/414/problem/C先复制一个思路:解法:2^n个数,可以联想到建立一棵二叉树的东西,比如 2,1,4,3就可以建成下面这样 [2,1,4,3] le原创 2014-04-08 18:14:33 · 2495 阅读 · 0 评论 -
Codeforce 364E 二维分治 包含K个1的 子矩阵个数
题目链接:http://codeforces.com/problemset/problem/364/E #include#include#include#include#include#define N 2550#define Mid(x,y) ((x+y)>>1)using namespace std;int n, m, K;__int64 ans原创 2013-12-21 14:54:09 · 3301 阅读 · 0 评论 -
Codeforces 97B Superset 平面分治
题目链接:点击打开链接题意:给定一个点集添加一些点后再把这个点集输出来。添加完点后使得对于点集内任意2个点都满足下面2条中至少一条1、在同一水平线上或在同一垂直线上2、所围成的矩阵里有其他点。思路:平面分治#pragma comment(linker, "/STACK:1024000000,1024000000")#include #include原创 2014-10-02 23:26:06 · 1618 阅读 · 0 评论 -
HDU 4812 D Tree 树分治+逆元+hash新姿势
题意:给定n个点的树 K下面n个数是点权下面n-1行给出树边。问:是否存在一条路径使得路径上点权积 % mod = K若存在则输出路径的两端。若存在多条路径则输出字典序最小的一条。思路:按树重心分治。分成路径是否经过树重心。然后用力码。。has[x] = u;表示乘积为x 对应的点是u但这样has就不能用计数器来优化清空。原创 2014-10-04 21:18:44 · 2746 阅读 · 0 评论 -
POJ 1741 点分治
题意:给定n个点的树, K值下面n-1条边问 两点之间距离 采用点分治,无根树转有根树时 根为树的重心(可以把树高度降低,防止树退化成链)思路:对于一棵 以u为根的树以下我们成(a,b)为合法点对(即dist(a,b) (a, b) 之间路径是唯一确定的。 将点对分2类:1、两点间路径经过 u 点2、两点间路径不经过u点 = 两点都在u的同一子树原创 2013-11-22 22:59:46 · 1960 阅读 · 0 评论