随笔分类 - -----------算法-----------
摘要:3498: PA2009 Cakes【题目描述】 传送门【题解】 求解三元环,枚举每条边,然后枚举点,判断是否组成三元环(可以用hash来判断),复杂度O(m32)" role="presentation">O(m32)O(m32)。代码如下#includ...
阅读全文
摘要:BZOJ 2179: FFT快速傅立叶&&洛谷 1919 【模板】A*B Problem升级版(FFT快速傅里叶)【题目描述】 传送门【题解】 FFT的板子题。代码如下#include#include#include#include#define MAXN...
阅读全文
摘要:2194: 快速傅立叶之二【题目描述】 传送门【题解】 先将B数组翻转,然后套一下FFT的板子就好了。代码如下#include#include#include#include#define CP complex#define MAXN 400005usin...
阅读全文
摘要:1926: [Sdoi2010]粟粟的书架【题目描述】 传送门【题解】 这题肯定是让我们分类讨论的。 R,C≤200时,荣斥+二分查找: Val[i][j][k]" role="presentation">Val[i][j][k]Val[i][j]...
阅读全文
摘要:3365: [Usaco2004 Feb]Distance Statistics 路程统计【题目描述】 传送门【题解】 题目中的方向和m是没用的,m永远等于n-1。那么就是简单的点分治了。代码如下#include#include#define MAXN 4...
阅读全文
摘要:1316: 树上的询问【题目描述】 传送门【题解】 点分治,然后对于每个询问用二分查找就可以了。 我尽然以9979ms卡过去了。【代码如下】#include#include#define MAXN 10005using namespace std;in...
阅读全文
摘要:1741 Tree【题目描述】 传送门【题解】 点分治模板。代码如下#include#include#include#include#include#define MAXN 10005#define LL long longusing namespace std;i...
阅读全文
摘要:点分治详解点分治是一个需要自己推导的算法,但是有板子,但是Cal这个函数根据不同题目是会变的。点分治是解决树上求值的一种算法,比如说一棵树上路径距离(u,v)距离<=K" role="presentatio...
阅读全文
摘要:【题目描述】 传送门、【题解】 DSU板子,直接看我博客代码如下#include#include#define MAXN 100005#define LL __int64using namespace std;int n,AnsMax,a[MAXN];LL c,An...
阅读全文
摘要:DSU on tree首先感谢LX dalao的讲解。DSU on tree用于解决静态树上众数问题,比如说Codeforces 600E题目大意 给你一棵树,每个节点有一种颜色,问你每个子树x的颜色数最多的那种颜色,如果颜色数相同,那么种类数相加。输入样例1 4...
阅读全文
摘要:【题目描述】 传送门【题解】 其实就是树剖+线段树,线段树如何判断连续段数量,也就是在Lson和Rson合并时加一句判断,Lson有段和Rson左端是否相同,相同-1,否则不变。 然后LCA时也要记一下,判小心一点,就可以了。代码如下#include#inclu...
阅读全文
摘要:3236: [Ahoi2013]作业【题目描述】 传送门【题解】 莫队+树状数组,树状数组维护前缀和,这个做法有点笨,87秒勉强卡过。代码如下#include#include#include#include#define MAXN 100005#define MAX...
阅读全文
摘要:2038: [2009国家集训队]小Z的袜子(hose)【题目描述】 传送门【题解】 裸的莫队,套一下组合数就可以了。代码如下#include#include#include#include#define LL long longusing namespace st...
阅读全文
摘要:3585: mex【题目描述】 传送门【题解】 其实和BZOJ3339一模一样,当Ai>n时这个Ai对答案没有影响,这是肯定的,那么读入时处理一下就可以了。代码如下#pragma GCC optimize(2)#include#include#include#inc...
阅读全文
摘要:3339: Rmq Problem【题目描述】 传送门【题解】 一眼就是莫队题,但是答案有的难求,其实可以二分这个答案,然后check用树状数组。 树状数组求的是小于mid的这个数有几个,当然不算重复。 如果get(mid)==mid的话,那么表示从1到mi...
阅读全文
摘要:1412: [ZJOI2009]狼和羊的故事【题目描述】 传送门【题解】 典型的最小割,那么怎么建图呢? 首先肯定要建超级源和汇,然后肯定狼向羊建边(反过来也可以),若有空的的话就是(狼->空->空->羊)按照这个顺序建边就可以了。代码如下#include#in...
阅读全文
摘要:1803: Spoj1487 Query on a tree III【题目描述】 传送门【题解】 DFS序将树变成序列,然后用主席树维护就可以了。代码如下#include#include#include#define MAXN 100005using namespa...
阅读全文
摘要:1193: [HNOI2006]马步距离【题目描述】 传送门【题解】 大范围贪心,然后小范围BFS,为了答案准确,尽量使这个小范围大,这题100就可以了。代码如下#include#include#include#includeusing namespace std;...
阅读全文
摘要:1644: [Usaco2007 Oct]Obstacle Course 障碍训练课题目描述 传送门题解 SPFA一下就好了,dst[f][x][y]" role="presentation">dst[f][x][y]dst[f][x][y]表示在(x,y)" ro...
阅读全文
摘要:1036: [ZJOI2008]树的统计Count【题目描述】 传送门【题解】 裸的树链剖分。代码如下#include#include#include#include#define MAXN 30005using namespace std;int n,m,a[MA...
阅读全文

浙公网安备 33010602011771号