02 2012 档案

摘要:http://poj.org/problem?id=3278可能写DFS写的比较习惯吧,每次只要遇到搜索提就会用DFS写。结果DFS版本各种剪枝后还是TLE郁闷。。求用dfs过的大牛代码。。后来用了bfs中间还是出了点小问题,考虑不认真造成的。BFSView Code #include <iostream>#include <cstring>#include <cstdio>#include <queue>using namespace std;int ans,s,e;bool visit[100007];struct node{ int pos 阅读全文
posted @ 2012-02-29 08:55 E_star 阅读(210) 评论(0) 推荐(0) 编辑
摘要:http://poj.org/problem?id=2993上一周的训练还没做完,唉。只能延续第一周的训练计划了。和pku2996正好过程相反。。。谢模拟题实在是太费劲了。。细节细节注意。View Code #include <iostream>#include <cstdio>#include <cstring>using namespace std;char str[20][40];int main(){ int i,j,k,l; int len; //首先排除字母构造整个表 for (i = 0; i < 17; i += 2) { for (. 阅读全文
posted @ 2012-02-28 21:06 E_star 阅读(292) 评论(0) 推荐(0) 编辑
摘要:1001http://acm.sdut.edu.cn/web/problem.php?action=showproblem&problemid=2389卡精度的题目,第一次的WA后就想到了应该是卡精度的问题,可是以前没接触过eps怎么用,于是就纠结在了eps的考虑上,好不容易弄好了。可是还是WA结果我真的就死心了,于是就去做最小生成树的那个题(后来还是纠结了,,唉悲剧啊、。。)今天拿来,就是加了个tmp数组的出事化。。就A了。。唉。每次比赛时对于时间的把握,以及拿过题目来之后思路的整理,都还不够完善。。需要锻炼。View Code #include <iostream>#i 阅读全文
posted @ 2012-02-27 21:07 E_star 阅读(211) 评论(0) 推荐(0) 编辑
摘要:http://poj.org/problem?id=2996题意很难理解。给你一个棋盘,分白黑双方,白的用大写字母表示,黑的用小写字母表示。("K" (King), "Q" (Queen), "R" (Rook), "B" (Bishop), "N" (Knight), or "P" (Pawn))然后给出位置的描述方法:a,b,c,d,e,f,g,h分表代表列 1--8 分别代表行。然后进行描述。注意:这里的矩形,最下边是第一行。还有对于白色,同一个棋子行数小得先表示例如样 阅读全文
posted @ 2012-02-26 11:11 E_star 阅读(233) 评论(0) 推荐(0) 编辑
摘要:http://poj.org/problem?id=1573一个原来做过的模拟题,大早上做题就是头脑清楚啊。1Y..呵呵。。View Code #include <iostream>#include <cstring>#include <cstdio>#define maxn 107using namespace std;char str[maxn][maxn];bool visit[maxn][maxn];//标记是否已经走过int map[maxn][maxn];//存储到达ij这点时走了多少步int main(){ int n,m,s,i,j; int 阅读全文
posted @ 2012-02-26 09:49 E_star 阅读(207) 评论(0) 推荐(0) 编辑
摘要:http://poj.org/problem?id=2632唉。。做模拟题一定要细心啊。才开始自己吧题意读错了,以为向左右转后还要走呢。调了很长时间还是没有过样例,最后又看了一遍题目才发现,原来是原地打转。悲剧啊。还有就是对于tagp[a].mark的判断,if 必须配有els否则上一步对mark的改变会影响到下一步的处理。唉。。。这样的小错误在模拟题中是很难检查的。。唉。。费劲啊。View Code #include <iostream>#include <cstdio>#include <cstring>#define maxn 10007using n 阅读全文
posted @ 2012-02-25 22:08 E_star 阅读(314) 评论(0) 推荐(0) 编辑
摘要:http://poj.org/problem?id=1068给你一系列的左右括号的两个表示方法,p和W.然后是有P向W转换Pi表示第i个右括号前边有几个左括号;Wi表示第i个右括号如果要找匹配的话,要找从后往前数几个左括号与它匹配。View Code #include <iostream>#include <cstdio>#include <cstring>#define maxn 25using namespace std;int fb[maxn],fw[maxn];//存储两种匹配int ct[maxn],len[maxn];//记录长度,ct变而len 阅读全文
posted @ 2012-02-25 20:07 E_star 阅读(251) 评论(0) 推荐(0) 编辑
摘要:http://poj.org/problem?id=3295首先分别将p,q,r,s,t的值饭分别枚举出来,然后运用递归将问题不到缩小,并判断是否为永真式。View Code #include <iostream>#include <cstdio>#include <cstring>#define maxn 107using namespace std;char str[maxn];int flag[10];int start;int juage(){ int p,q; switch(str[++start]) { case 'K': p = 阅读全文
posted @ 2012-02-25 19:29 E_star 阅读(244) 评论(0) 推荐(0) 编辑
摘要:http://poj.org/problem?id=2506这道题和原来课本上的一个递推题相似,不过这里有了两种选择,2*2 和2*1f[n] = f[n-1] + f[n-2]*2 ;View Code #include <iostream>#include <cstdio>#include <cstring>#define maxn 1007using namespace std;int f[255][maxn];int tmp[maxn];//记录f[n-2]*2后的结果int len[maxn];//记录每个数的长度void muilty(int * 阅读全文
posted @ 2012-02-25 16:06 E_star 阅读(327) 评论(0) 推荐(0) 编辑
摘要:http://poj.org/problem?id=2524题目分类是分治,我不知道怎么用分治。并查集1y.注意这里每个人最多有一个宗教信仰View Code #include <iostream>#include <cmath>#include <cstdio>#include <cstring>#define maxn 50007using namespace std;int f[maxn];int find(int x){ if (x != f[x]) f[x] = find(f[x]); return f[x];}void Union(i 阅读全文
posted @ 2012-02-24 21:51 E_star 阅读(165) 评论(0) 推荐(0) 编辑
摘要:http://poj.org/problem?id=2586刚开始看了很长时间都没看懂题意,最后还是看了discuss里面讲的才懂了。开始还把连续五个月都会抱亏的题意理解错了。我理解成1 - 5 6 - 10 11-12 了。。心想怎么会一年8次呢。最后才看到原来是1-5 2-6 3 -7 4 - 8 5 -9 6 -10 7 -11 8 -12这8次报表时都是亏空的。而每个月可能盈利,也可能亏空所以这样就会导致全年盈利的情况了。这题的贪心在于,这8次中,出了第一次每一次都会和上一次重复利用连续的四个月的盈亏情况,所以我们贪心的让他们共用亏空,这样就会使盈利的月份增多,所以能够获得最大利润。V 阅读全文
posted @ 2012-02-24 21:21 E_star 阅读(325) 评论(0) 推荐(0) 编辑
摘要:float的范围为-2^128 ~ +2^127,也即-3.40E+38~ +3.40E+38;double的范围为-2^1024 ~ +2^1023,也即-1.79E+308~ +1.79E+308 阅读全文
posted @ 2012-02-24 19:43 E_star 阅读(190) 评论(0) 推荐(0) 编辑
摘要:http://poj.org/problem?id=1328这个题目就是每个岛屿对应一个雷达区间,然后确定好雷达区间后,然后在将区间的s或者e从小到大排序,然后贪心。第一种按s从小到大排序:View Code #include <iostream>#include <cstdio>#include <cstring>#include <cmath>#include <algorithm>#define maxn 1007using namespace std;struct node{ int x,y;}tagp[maxn];struc 阅读全文
posted @ 2012-02-23 22:12 E_star 阅读(5856) 评论(0) 推荐(0) 编辑
摘要:http://poj.org/problem?id=2965和pku1753 一样的思路,可是自己敲了三四遍还是不出结果。就叫比较细心的GTL来帮忙看了看。。结果最重要的地方终于检查了出来,就是再change函数里面对要改变的那一点改变了两次。唉,,这错误找出来不容易啊。。。思路:将每个点压缩进一维数组,然后每个点枚举他的两种状态(改变或者不改变),最后得出结果。View Code #include <iostream>#include <cstdio>#include <cstring>#define maxn 10#define inf 99999999 阅读全文
posted @ 2012-02-23 19:29 E_star 阅读(188) 评论(0) 推荐(0) 编辑
摘要:http://poj.org/problem?id=1753以前做过的一道题目,可是拿过来在做就没思路了。还是看了以前做的。唉。。悲剧啊。。思路:首先将整个4*4的棋盘,压缩到一个一维数组中,然后对每一个点的两种状态(翻转或者不翻转)枚举。枚举完所有的情况,最后查看是否能够达到目标。View Code #include <cstdio>#include <cstring>#include <iostream>#define maxn 10#define inf 99999999using namespace std;char str[maxn][maxn]; 阅读全文
posted @ 2012-02-22 21:14 E_star 阅读(238) 评论(0) 推荐(0) 编辑
摘要:这次的CF还有上次hdu的比赛让我发现自己在遇到那种简单体时,心理总是静不下来,老是还没整理好思路就开始敲代码,结果弄得Bug无数,还有就是那种中等难度的题目,思路还是不够成熟,有时能够做出,有时要想半天,对于难题没有接触过的当然还是不会了。自己做题还是太少,接触到的知识还是太少,对于每个算法的理解还是不够熟练。所以最近几个周要坚持按照计划来,扎实的造好每一步。加油。。。悲剧,从第一次做cf开始rating一直是降得。。。唉。。。好吧,只能加油了》http://codeforces.com/contest/152/problem/A简单题,分别给出了n个人的m科课程的分数没找出拥有这科最高分的 阅读全文
posted @ 2012-02-21 19:18 E_star 阅读(304) 评论(0) 推荐(0) 编辑
摘要:才开始的时候研究过他,不过当时只是记住的模板刷了几个模板题后一位会了。过上一段时间就忘了。唉。。这次好好研究研究。。http://baike.baidu.com/view/501081.htm补充:最大匹配: 图中包含边数最多的匹配称为图的最大匹配。完美匹配: 如果所有点都在匹配边上,称这个最大匹配是完美匹配。最小覆盖: 最小覆盖要求用最少的点(X集合或Y集合的都行)让每条边都至少和其中一个点关联。可以证明:最少的点(即覆盖数)=最大匹配数最小路径覆盖:用尽量少的不相交简单路径覆盖有向无环图G的所有结点。解决此类问题可以建立一个二分图模型。把所有顶点i拆成两个:X结点集中的i和Y结点集中的i& 阅读全文
posted @ 2012-02-16 14:51 E_star 阅读(457) 评论(0) 推荐(0) 编辑
摘要:http://poj.org/problem?id=3694给你一个存在桥的无向连通图,每次增加一条边,问每次增加边之后还剩多少个桥。朴素的办法就是每输入一次tarjan求一次桥的个数,肯定会tle;正确的做发是,首先求出改图的桥的数量,在tarjan的过程中里用并查集把不是桥的边缩为一点,然后得到一棵树,每加入一条边,就肯定会形成一个环,,然后删除环中石桥的边,最后得出总的桥的数量。删除的过程就是检查是否石桥是就有cut--;View Code #include <cstdio>#include <cstring>#include <vector>#inc 阅读全文
posted @ 2012-02-15 20:48 E_star 阅读(287) 评论(0) 推荐(0) 编辑
摘要:http://poj.org/problem?id=3177http://poj.org/problem?id=3352把3177的代码直接贴到3352也就a了。3177:题意是给一个图,注意这里有重边,问至少添加多少条边才能使是该图成为边双连通图。首先求出该图中的割边(桥)然后删除桥,剩下的就都是边双连通分量了,然后将其缩成一个点,再把桥加上就死形成了一棵树,边连通度为1.记录叶子节点数ans,则至少添加(ans+1)/2个节点才能使原图成为边双连通图。此时low[]值相同的是同一个连通分量,注意在求tarjan是不能染low[i]取到low[ifather]的值,这样整个图的low[i]就 阅读全文
posted @ 2012-02-15 15:17 E_star 阅读(329) 评论(0) 推荐(0) 编辑
摘要:1062* 昂贵的聘礼 枚举等级限制+dijkstra1087* A Plug for UNIX 2分匹配1094 Sorting It All Out floyd 或 拓扑1112* Team Them Up! 2分图染色+DP1125 Stockbroker Grapevine FLOYD1135 Domino Effect 最短路1149* PIGS 网络流1161* Walls floyd1201 Intervals 差分约束1236* Network of Schools 强联通1251 Jungle Roads MST1273 Drainage Ditches 最大流1274 Th 阅读全文
posted @ 2012-02-15 11:20 E_star 阅读(291) 评论(0) 推荐(0) 编辑
摘要:http://poj.org/problem?id=1904很多人都说是二分匹配题目,可是我还没有接触他呢。悲剧啊。不过这道题要求强连通分量做。king有n个儿子,这边有n个beautiful mm,每个儿子可以喜欢多个mm,但是只能和一个结婚。最后king的wizard给出了一个完美匹配。可是国王比较定眼,想知道每个儿子所有可以结婚的情况。儿子编号(1,n) mm编号(n+1, 2*n),儿子喜欢mm就建立一条边 u ->v 如果儿子取了mm 在建立一条边 v->u然后求强连通分量,在一个强连通分量里的是他所有可能结婚的情况View Code #include <iostr 阅读全文
posted @ 2012-02-15 09:08 E_star 阅读(181) 评论(0) 推荐(0) 编辑
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=3836缩点后求每个点的入度与出度,最后结果是max(入度为0的点的个数,出度为0的点的个数);只要整个图形成强连通图就可以证明了。。今天真二把tarjian模板写错了,贡献了好几次wa竟然没有检查出来。。。。唉。。。View Code #include <cstdio>#include <cstring>#include <iostream>#include <vector>#include <stack>#define maxn 20007usin 阅读全文
posted @ 2012-02-14 17:31 E_star 阅读(207) 评论(0) 推荐(0) 编辑
摘要:http://poj.org/problem?id=2553题意才开始理解错了一位G中的任意一点都能到达v且v也能达到该点时v才属于bottom;如果这样最后出度为0的比为一个了,而且整个图都要缩为一点了。其实题意是说w属于G如果v->w ==>(推出)w->v则v属于bottom。先缩点,然后统计出度为0的点,然后输出所有出度为0的点包含的点。如果出度不为0,那么v->w退不出w->v这里的DAG比存在出度为0的点。。。所以都骂出题的二逼啊。。。View Code #include <cstdio>#include <cstring>#i 阅读全文
posted @ 2012-02-14 16:35 E_star 阅读(300) 评论(0) 推荐(0) 编辑
摘要:http://poj.org/problem?id=2186将所有最大连通分量缩点,然后统计缩点后每个点的出度,出度为0的肯定就是了可是这个点可能是缩出来的,所以要记录这个点真正包含的点数。如果出度为0的点大于1个说明不存在View Code 稍微尝试了一下stl的vector和stack#include <cstdio>#include <cstring>#include <vector>#include <stack>#include <iostream>#define maxn 10017using namespace std; 阅读全文
posted @ 2012-02-14 15:08 E_star 阅读(281) 评论(0) 推荐(0) 编辑
摘要:http://poj.org/problem?id=1236N(2<N<100)各学校之间有单向的网络,每个学校得到一套软件后,可以通过单向网络向周边的学校传输,问题1:初始至少需要向多少个学校发放软件,使得网络内所有的学校最终都能得到软件。2,至少需要添加几条传输线路(边),使任意向一个学校发放软件后,经过若干次传送,网络内所有的学校最终都能得到软件。首先求出该图所有的强连通分量,将其缩为一点,因为对于强连通分量,任意两点都能互相可达,只要给DAG(强连通分量)中的任意一点都能互相到达。缩点后然后统计每个点的入度与出度,入度为0的点肯定是A的答案,而对于答案B则是max(入度为0 阅读全文
posted @ 2012-02-14 10:04 E_star 阅读(305) 评论(0) 推荐(0) 编辑
摘要:http://poj.org/problem?id=2117给出一个森林,求删掉一个点后,形成的连通块的个数。和pku1523一样的意思,只不过这里是森林了。。还要加上原来的连通块数。注意:这里的当m == 0 时要单独考虑,因为要删掉一个点,所以== n-1 而单纯的求的话是n了。。。View Code #include <cstdio>#include <cstring>#include <iostream>#define maxn 10010using namespace std;struct node{ int v; int next;}g[4*ma 阅读全文
posted @ 2012-02-13 15:14 E_star 阅读(270) 评论(0) 推荐(0) 编辑
摘要:Tarjan算法应用 (割点/桥/缩点/强连通分量/双连通分量/LCA(最近公共祖先)问题)转载自:http://hi.baidu.com/lydrainbowcat/blog/item/2194090a96bbed2db1351de8.html基本概念:1.割点:若删掉某点后,原连通图分裂为多个子图,则称该点为割点。2.割点集合:在一个无向连通图中,如果有一个顶点集合,删除这个顶点集合,以及这个集合中所有顶点相关联的边以后,原图变成多个连通块,就称这个点集为割点集合。3.点连通度:最小割点集合中的顶点数。4.割边(桥):删掉它之后,图必然会分裂为两个或两个以上的子图。5.割边集合:如果有一个 阅读全文
posted @ 2012-02-13 11:42 E_star 阅读(504) 评论(0) 推荐(0) 编辑
摘要:http://poj.org/problem?id=1523求一个无向图的割点,以及输出删除该割点后形成的连通块数(删掉一个割点后会形成两个连通分块)今天脑子被驴了。晕晕的。。。这样一个模板题整了一上午,各种粗心错误,敲了好几遍,现在看到tarjan就恶心。。。View Code #include <cstdio>#include <cstring>#include <iostream>#define maxn 1007using namespace std;struct node{ int v; int next;}g[maxn*4];int low[ma 阅读全文
posted @ 2012-02-13 11:41 E_star 阅读(291) 评论(0) 推荐(0) 编辑
摘要:Tarjan算法(有向图强连通分量问题)转载自:http://www.byvoid.com/blog/scc-tarjan/zh-hans/[有向图强连通分量]在有向图G中,如果两个顶点间至少存在一条路径,称两个顶点强连通(strongly connected)。如果有向图G的每两个顶点都强连通,称G是一个强连通图。非强连通图有向图的极大强连通子图,称为强连通分量(strongly connected components)。下图中,子图{1,2,3,4}为一个强连通分量,因为顶点1,2,3,4两两可达。{5},{6}也分别是两个强连通分量。直接根据定义,用双向遍历取交集的方法求强连通分量,时 阅读全文
posted @ 2012-02-12 19:47 E_star 阅读(248) 评论(0) 推荐(0) 编辑
摘要:做了一些树形DP实在不想做了看到von在玩tarjan算法,好像放假之前看过关于rmq 以及tarjan算法的说明只是没具体弄明白。今天看了一下von分享的资料不错。找了一个模板题就当tarjan算法的模板吧http://acm.hdu.edu.cn/showproblem.php?pid=1269判断是否为强连通图 bcnt == 1只有一个强连通分量且为自己 bcnt >1 存在多个强连通分量View Code #include <cstdio>#include <iostream>#include <cstring>#include <ve 阅读全文
posted @ 2012-02-12 19:46 E_star 阅读(338) 评论(0) 推荐(0) 编辑
摘要:2、 RMQ算法(转载)对于该问题,最容易想到的解决方案是遍历,复杂度是O(n)。但当数据量非常大且查询很频繁时,该算法也许会存在问题。本节介绍了一种比较高效的在线算法(ST算法)解决这个问题。所谓在线算法,是指用户每输入一个查询便马上处理一个查询。该算法一般用较长的时间做预处理,待信息充足以后便可以用较少的时间回答每个查询。ST(Sparse Table)算法是一个非常有名的在线处理RMQ问题的算法,它可以在O(nlogn)时间内进行预处理,然后在O(1)时间内回答每个查询。首先是预处理,用动态规划(DP)解决。设A[i]是要求区间最值的数列,F[i, j]表示从第i个数起连续2^j个数中的 阅读全文
posted @ 2012-02-12 16:44 E_star 阅读(366) 评论(0) 推荐(0) 编辑
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=1520学校举行周年纪念日party,要求是直接上司和下属关系的员工不能同时参,给出树形关系图,求怎样邀请的人的列表是的总rating最大。每个人都对应着一个rating首先建立无向图,然后以以1节点为根节点,dfs从叶子往根推。。dp[i][0] 表示i节点不邀请是的最大rating,dp[i][1]表示i节点要请示最大的rating转台转移方程dp[i][0] += max(dp[son[i]][1],dp[son[i]][0]); i没被邀请,所以他的孩子可以邀请也可以不邀请,我们只要最大rating.. 阅读全文
posted @ 2012-02-11 15:56 E_star 阅读(380) 评论(0) 推荐(0) 编辑
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=2196看了很长时间都没看懂,解题报告也是乱的让人头疼。最后问了一下von的思路,然后看了看代码终于明白了。这题真的很难。首先按所给信息建图,建立的是有向图。然后将1视为根节点第一遍dfs从叶往根递推,求出每个点所能到达的最远距离和次远距离,只有当这一个点有多条分支时才存在次远距离(注意这里是有方向);该点所能到达的最远距离可能是第一遍dfs搜到最远距离,也有可能由父亲节点+父亲节点与该节点的距离所得。所以第二遍dfs从根节点1出发往树叶边遍历。f[i]存最长距离,l[i]存次长距离,dp[i]存由父亲节点延伸 阅读全文
posted @ 2012-02-11 14:06 E_star 阅读(293) 评论(0) 推荐(0) 编辑
摘要:树形DPhttp://acm.hdu.edu.cn/showproblem.php?pid=2196√向下搜一遍,向上搜一遍http://acm.hdu.edu.cn/showproblem.php?pid=1561√对每一个节点进行一次背包,好题啊,两个DP树形和背包结合的http://acm.hdu.edu.cn/showproblem.php?pid=1011√这道是当年省赛的压轴题,但是感觉和上一道差不多,一样的难度,唯一不同的就是这个是无向图(我由于思维惯性拿来当单向图作,纠结了好久。。。)树形+背包+临街表下边是从天涯空间里找出来的练习http://acm.pku.edu.cn/J 阅读全文
posted @ 2012-02-11 10:11 E_star 阅读(284) 评论(0) 推荐(0) 编辑
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=1033给两点,然后又第二个点画线,单位长度为10,每次旋转90度,这里的陷阱是确定了顺时针后,逆时针要根据顺时针来确定。。View Code #include <cstdio>#include <iostream>#include <algorithm>#include <cstring>#define maxn 207using namespace std;int main(){ //freopen("d.txt","r" 阅读全文
posted @ 2012-02-08 18:32 E_star 阅读(203) 评论(0) 推荐(0) 编辑
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=1561同hdu1011只是这里做的小处理是将0点加入,将原来的森林变成了树,这样就可以按照树形dp展开来做了。。dp[i][j]表示从i点往后占领j个城市所获得的总的最多宝物dp[i][j]=max(dp[i][j],dp[i][j-k]+dp[son[i]][k])View Code #include <cstdio>#include <iostream>#include <algorithm>#include <vector>#include <cst 阅读全文
posted @ 2012-02-08 16:13 E_star 阅读(251) 评论(0) 推荐(0) 编辑
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=1011dp[i][j]表示在第i个位置放j个trooper,然后又该节点分配给子节点后所能得到的最大brains;状态转移方程dp[i][j]=max(dp[i][j],dp[i][j-k]+dp[son[i]][k]);从叶子节点往根节点递推。。。View Code #include <cstdio>#include <iostream>#include <algorithm>#include <vector>#include <cstring># 阅读全文
posted @ 2012-02-08 14:53 E_star 阅读(218) 评论(0) 推荐(0) 编辑
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=1198原来看解题报告做过的一道题,现在拾起来再做感觉还是有点难度,慢慢想想也就思路清晰了。首先发现通道只要相碰就能连接。结构体记录是否能够连接,把能连接的用并查集归为同一集合,不能连接的则属于不同的集合。最后统计几何数就欧了。。、View Code #include <cstdio>#include <cstring>#define MAXN 59struct node{ int up; int down; int left; int right;};node tagp[11]={ { 阅读全文
posted @ 2012-02-07 19:26 E_star 阅读(185) 评论(0) 推荐(0) 编辑
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=10312012 新年A的第一道题目。纪念一下。水题: 有m个东西要n个人评价给分,求出k个人的评价给分最高View Code #include #include #include #include using namespace std;#define MAXN 1000struct node{ double val; int num;}tagp[MAXN];bool cmp1(node a,node b){ return a.val>b.val;}bool cmp2(int a,int b){ ... 阅读全文
posted @ 2012-02-07 16:50 E_star 阅读(171) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示