题意:训练指南260 #include <cstdio> #include <cstring> #include <algorithm> #include <iostream> #include <cmath> using namespace std; struct Point { double x
分类:
其他好文 时间:
2016-03-11 21:58:51
阅读次数:
230
没有规划的行动是随时会进入歧途的,所以我觉的应该写一个计划。 首先学习新知识是必须的,以此为主,学习的和刘汝佳的训练指南重合了,这样我要边看入门边训练,感觉好难,多练习题,每一个知识点如果理解思想就找题来练习。 面对java的学习暂时规划是跟上老师讲的就好了,把打游戏的时间来学习java好像是一个很
分类:
其他好文 时间:
2016-03-04 11:50:01
阅读次数:
160
题目传送门 题意:训练指南P250 分析:DFS记忆化搜索,范围或者说是图是已知的字串构成的自动机图,那么用 | (1 << i)表示包含第i个字串,如果长度为len,且st == (1 << m) - 1则是可能的。打印与之前相似。 #include <bits/stdc++.h> using n
分类:
其他好文 时间:
2016-02-26 21:55:34
阅读次数:
228
题目传送门 题意:训练指南P248 分析:第一个操作可以用并查集实现,保存某集合的最小高度和最大高度以及城市个数。运用线段树成端更新来统计一个区间高度的个数,此时高度需要离散化。这题两种数据结构一起使用,联系紧密。 #include <bits/stdc++.h> using namespace s
分类:
其他好文 时间:
2016-02-26 20:38:23
阅读次数:
237
struct Edge { int from,to,cap,flow; }; struct Dinic { int n,m,s,t; vector<Edge> edges; vector<int> G[maxn]; bool vis[maxn]; int d[maxn]; int cur[maxn]
分类:
其他好文 时间:
2016-02-15 17:59:00
阅读次数:
218
struct Edge { int from,to,cap,flow,cost; }; struct MCMF { int n,m,s,t; vector<Edge> edges; vector<int> G[maxn]; int inq[maxn]; int d[maxn]; int p[maxn
分类:
其他好文 时间:
2016-01-31 21:27:45
阅读次数:
268
关于RMQ的问题我就直接截取刘汝佳的《算法竞赛训练指南》上的解释了
分类:
其他好文 时间:
2016-01-28 13:51:44
阅读次数:
117
题目传送门题意:训练指南P207分析:因为矩阵不超过20行,所以可以建20条线段的线段树,支持两个区间更新以及区间查询.#include using namespace std;#define lson l, mid, o b) a = b; } void push_up(int o) { no.....
分类:
其他好文 时间:
2015-12-15 14:38:08
阅读次数:
202
题目传送门题意:训练指南P197分析:枚举裁判的位置,用树状数组来得知前面比它小的和大的以及后面比它小的和大的,然后O (n)累加小 * 大 + 大 * 小 就可以了#include using namespace std;typedef long long ll;const int N = 1e5...
分类:
其他好文 时间:
2015-12-07 22:17:59
阅读次数:
149
题目传送门题意:训练指南P192分析:主要就是一个在路径压缩的过程中,更新点i到根的距离#include using namespace std;const int N = 2e4 + 5;struct DSU { int rt[N], d[N]; void init(void) { memset....
分类:
Web程序 时间:
2015-12-07 20:38:36
阅读次数:
187