Ural
南宮逸辰
喜欢听音乐,ACM旅途中
展开
-
Ural-1109-Conference
比较简单的2分图匹配题,用匈牙利法做就OK吧,第一次做类似的题 代码: #include #include #define MAX 1001 int n,m,k,pre[MAX],map[MAX][MAX],vis[MAX]; bool dfs(int x) { for(int i=1;i<=m;i++) { if(!vis[i]&&map[x][i]) {原创 2013-02-27 17:07:30 · 527 阅读 · 0 评论 -
Ural-1018-Binary Apple Tree
树形DP的一个题,题意是说给你一些树枝,树枝上面有苹果,现在要求你保留其中的Q个,使得苹果树最多,问最多能留住多少个苹果。 对于每个分支结点来说,有三种选择: 1、减去左子树 2、减去右子树 3、将节点数合理分配给左右子树 代码: #include #include #include using namespace std; const int maxn=300; int原创 2013-10-04 11:17:38 · 839 阅读 · 0 评论 -
Ural-1297-Palindrome
这个题是要求求出所给字符串中的最长回文子串,以前用的其他算法,今天看到后缀数组可以做,于是乎~ 唉,必须要结合RMQ。 代码: #include #include #include #include using namespace std; const int maxn=5000; int n,m,wa[maxn],wb[maxn],wv[maxn],wu[maxn],rank[maxn原创 2013-10-04 17:01:33 · 615 阅读 · 0 评论