
ACM
文章平均质量分 56
leo524891010
坚持 耐心 高效
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
POJ2352 Interval Tree, Segment Tree, 线段树, 区间树
#include #include using namespace std;const int MAXN = 72010;struct node{ int l; int r; int count;}nodes[MAXN];void build(int l, int r, int step){ nodes[step].l = l; nodes[step].r = r原创 2012-04-15 07:08:09 · 860 阅读 · 0 评论 -
POJ 3687 Topo 拓扑
#include #include #include const int MAXN = 205;int N, M;int out[MAXN];int adjMat[MAXN][MAXN];std::vector ans[MAXN];int res[MAXN];int ball[MAXN];void topo(){ int idx = 1; std::priority_q原创 2012-04-26 12:24:21 · 546 阅读 · 0 评论 -
POJ 2502
典型的Dijkstra的最短路径的题目这道题基本按照下面网址的思路写的 但是无论如何不能AC,后来照着抄了遍代码都不行,实在精疲力尽了就不贴自己的代码了 参考如下http://www.cnblogs.com/mengxm-lincf/archive/2012/02/14/2350272.html原创 2012-07-31 13:45:53 · 688 阅读 · 0 评论 -
POJ 2502 Dijkstra
这道题主要麻烦在信号的等待上 写着写着容易混乱基本思想就是Dijkstra #include #define MAXN 305#define INF (1 << 28)int map[MAXN][MAXN];int dist[MAXN];int v[MAXN];int M, N;struct node{ int color; int r; int t[2]原创 2012-08-01 12:33:33 · 684 阅读 · 0 评论 -
POJ 2513
并查集Union-Set: 使用rank数组Trie树欧拉图#include const int MAXN = 500003;int N;int pre[MAXN];int rank[MAXN];int deg[MAXN];struct trie{ int color; trie* next[26]; trie() {原创 2012-04-29 13:21:44 · 466 阅读 · 0 评论 -
POJ 1656
//1. 基本做法 居然可以AC#include #include using namespace std;int board[101][101];void fillWhite(int x, int y, int l){ for(int i = x; i < x + l && i < 101; i++) for(int j = y; j < y + l && j < 101原创 2012-04-14 14:19:41 · 452 阅读 · 0 评论 -
POJ 3468
#include using namespace std;#define L(x) ((x) << 1)#define R(x) (((x) << 1) | 1)#define MAXN 100010 //const int MAXN = 100010;struct node{ int l; int r; __int64 sum; __int64 inc;}nodes原创 2012-04-17 13:13:12 · 504 阅读 · 0 评论 -
POJ 2001 Trie树 (EOF 用ctrl+z表示 VS中) 一次AC!
#include const int MAXN = 1005;const int MAXM = 21;struct node{ int cnt; node* next[26]; node() { cnt = 0; memset(next, 0, sizeof(next)); }}* root;void insert(char s[]){ node* cur原创 2012-05-01 11:45:33 · 534 阅读 · 0 评论 -
POJ 1990
1. Brute Force方法导致TLE2. 数组树做法,先按照v升序排序。然后对排序好的Cow循环,假设在i位置的cow,那么0到i-1位置的cow的v都比当前v小,则可以利用公式v * (prevCnt * x - prevDist + totalDist - prevDist - (i - prevCnt) * x)算出。v * (prevCnt * x - prevDist)原创 2012-03-09 12:47:12 · 481 阅读 · 0 评论 -
POJ 1258
最小生成树的一道题 Minimum Spanning Tree1. Prim#include using namespace std;const int MAXN = 105;int matrix[MAXN][MAXN];int cal(int n){ int used[MAXN]; int dis[MAXN]; memset(used, 0, sizeof原创 2012-04-18 12:15:59 · 441 阅读 · 0 评论 -
POJ 2528
#include #include using namespace std;const int MAXN = 25000;struct node{ int l; int r; bool full;}nodes[MAXN * 5];struct postPnt{ int pos; int num;}post[MAXN];// cmp functionsboo原创 2012-04-16 01:34:27 · 542 阅读 · 0 评论