1下暑假集训
文章平均质量分 77
搏风雨
倘若不坚强,懦弱给谁看。
展开
-
POJ1060 Modular multiplication of polynomials解题报告 (2011-12-09 20:27:53)
Modular multiplication of polynomialsTime Limit: 1000MS Memory Limit: 10000KTotal Submissions: 3239 Accepted: 1459DescriptionConsider polynomials wh转载 2014-07-20 14:29:55 · 699 阅读 · 0 评论 -
POJ 3126 Prime Path(BFS算法)
思路:宽度优先搜索(BFS算法),原创 2014-08-06 14:50:27 · 501 阅读 · 0 评论 -
POJ 1270 Following Orders(拓扑排序)
题意: 给两行字符串,第一行为一组变量,第二行时一组约束原创 2014-08-07 10:49:58 · 468 阅读 · 0 评论 -
POJ 1258 Agri-Net(Prim算法)
题意:n个农场,求把所有原创 2014-08-08 10:10:36 · 490 阅读 · 0 评论 -
POJ 2421 Constructing Roads(Kruskal算法)
题意:给出n个村庄之间的距离,以及已经连通原创 2014-08-07 15:41:32 · 525 阅读 · 0 评论 -
hdu 1232 畅通工程(并查集)
代码1:用scanf#include#include#includeusing namespace std;const int maxn=30000 +100;int set[maxn];int set_find(int d){ if(set[d]<0) return d; return set[d]=set_find(set[d]);}void join(int原创 2014-07-30 16:38:41 · 464 阅读 · 0 评论 -
POJ 3349 Snowflake Snow Snowflakes (哈希表)
题意:给出n片雪花,判断其中有没有相同的雪花原创 2014-08-11 09:36:37 · 563 阅读 · 0 评论 -
hdu 1166 敌兵布阵(树状数组)
思路:树状数组用cin,cout#include#include#includeusing namespace std;const int maxn=50000 +100;int n,c[maxn];char s[10];int lowbit(int i){ return i&-i;}void update(int i,int val)//更新函数{原创 2014-08-01 11:02:39 · 475 阅读 · 0 评论 -
hdu 1541 stars(树状数组)
思路:树状数组原创 2014-08-01 18:11:25 · 464 阅读 · 0 评论 -
POJ 3349 Snowflake Snow Snowflakes(哈希表)
题意:判断有没有两朵相同的雪花。每朵雪花有六瓣,比较花瓣长度的方法看是否是一样的,如果对应的arms有相同的长度说明是一样的。给出n朵,只要有两朵是一样的就输出有Twin snowflakes found.,如果任何两个都是不一样的输出No two snowflakes are alike。n=100,000。思路:最简单的就是枚举每两片雪花,判断他们是否相同。时间复杂度为O(n*n)转载 2014-08-11 09:23:13 · 590 阅读 · 0 评论 -
POJ 1611 The Suspects(并查集)
#includeusing namespace std;const int maxn=30000 +100;int set[maxn];int sum[maxn];int set_find(int d){if(set[d]return d;return set[d]=set_find(set[d]);}void join(int x,int y)原创 2014-07-30 15:20:53 · 472 阅读 · 0 评论 -
POJ 3437 Tree Grafting
// 二叉树中X节点的高 = 二叉树中X的父节点的高 + X是第几个儿子#include #includeusing namespace std; string s; int i,n=0,height1,height2; void work(int level1,int level2){ int tempson=0; while (s[i]=='原创 2014-07-30 21:08:50 · 1118 阅读 · 0 评论 -
POJ 1308 Is It A Tree?
题意:给出一些节点,判断这些节点构成的是不是一棵树思路:原创 2014-08-12 16:23:53 · 620 阅读 · 0 评论 -
(经典map)A - Hardwood Species(7.1.1)(利用STL中自带的排序功能编程的实验范例)
DescriptionHardwoods are the botanical group of trees that have broad leaves, produce a fruit or nut, and generally go dormant in the winter. America's temperate climates produce forests with hu转载 2014-07-23 17:27:06 · 549 阅读 · 0 评论 -
UVA 291 The House Of Santa Claus(DFS算法)
思路:#include#include#includeusing namespace std;int map[6][6];void makemap(){ memset(map,0,sizeof(map)); for(int i=1;i<=5;i++) for(int j=1;j<=5;j++) if(i!=j) map[i][j]=1; map[4原创 2014-08-06 16:32:14 · 699 阅读 · 0 评论 -
POJ 2236 Wireless Network
dafdas#include#includeusing namespace std;const int maxn=1000 +100;int set[maxn];int xx[maxn];int yy[maxn];bool valid[maxn];int n,d;int set_find(int d)//路径压缩的 合并树根 的函数{ if(set[d]<0) re原创 2014-07-29 12:05:39 · 577 阅读 · 0 评论 -
POJ2503-Babelfish
转载请注明出处:優YoU http://user.qzone.qq.com/289065406/blog/1304498724 大致题意:输入一个字典,字典格式为“英语à外语”的一一映射关系然后输入若干个外语单词,输出他们的 英语翻译单词,如果字典中不存在这个单词,则输出“eh” 解题思路:水题,输入时顺便用STL的map标记外语是否出现过,转载 2014-07-24 09:33:08 · 468 阅读 · 0 评论 -
POJ 1988 Cube Stacking
看完了并查集,找道题练练,发现还不是很熟练。。。本领还没到家啊!这道题的思路,就是每次记下该点到父结点的个数,并记录下其下的结点个数。之后,每次"C"时,将总的减去它所压的方块,即答案!!!(也是参考别人的~-?)#include#define max 30010struct node{ int parent; int up; int down;};转载 2014-07-26 16:51:21 · 501 阅读 · 0 评论 -
POJ 1504,ZOJ 2001,UVA 713, Adding Reversed Numbers,错误,已找到错误
//错误#include#include#includeusing namespace std;char a[1000];char b[1000];char c[1000];int main(){int n;int i;int j;int co;int la,lb,lc;cin>>n;while(n--){memset(a,0原创 2014-07-18 14:47:29 · 640 阅读 · 0 评论 -
POJ 2309 BST(二叉搜索树)
思路:除以2,找到商原创 2014-07-31 12:11:55 · 502 阅读 · 0 评论 -
POJ 3253 Fence Repair(哈夫曼树)
思路:哈夫曼树,用优先队列,简单原创 2014-08-03 23:17:59 · 472 阅读 · 0 评论 -
ZOJ 2724 Windows Message Queue (二叉堆,优先队列)
思路:用优先队列priority_queue,简单原创 2014-08-03 12:00:21 · 568 阅读 · 0 评论 -
POJ 1577 Falling Leaves(二叉搜索树)
代码1:超时#include#include#includeusing namespace std;char c[100][100];struct node{ char c; node *lchild; node *rchild;};void f(node *p)//前序遍历输出,用递归{ printf("%c",p->c); if(p->lchild!=NUL原创 2014-08-04 17:28:44 · 777 阅读 · 0 评论 -
poj 2106 Boolean Expressions 课本代码
#includeconst int maxn=100 +10;int val[maxn],vtop;int op[maxn],otop;void insert(int b){while(otop &&op[otop-1]==3){b=!b;--otop;}val[vtop++]=b;}void calc(void){原创 2014-07-24 12:01:34 · 821 阅读 · 0 评论 -
UVA 10158 War
思路见课本 P#include#includeusing namespace std;const int maxn=2 *10000 +100;int set[maxn];int n;int set_find(int d){if(set[d]return d;return set[d]=set_find(set[d]);}int原创 2014-07-29 11:10:40 · 799 阅读 · 0 评论 -
POJ 2255 Tree Recovery
#include#includeusing namespace std;char preord[30],inord[30];void recover(int preleft,int preright,int inleft,int inright){ int root,leftsize,rightsize; assert(preleft<=preright && inleft<原创 2014-07-31 10:38:56 · 455 阅读 · 0 评论 -
POJ 2499 Binary Tree
#includeusing namespace std;int main(){ int sc; cin>>sc; for(int s=1;s<=sc;s++) { int a,b; cin>>a>>b; int left=0,right=0; while(1) { if(a>b) { int up=(a-1)/b; //int up=a原创 2014-07-31 09:38:47 · 457 阅读 · 0 评论 -
POJ1363 Rails 验证出栈序列问题
题目地址: http://poj.org/problem?id=1363此题只需验证是否为合法的出栈序列。有两个思路:1、每个已出栈之后的数且小于此数的数都必须按降序排列。复杂度O(n^2),适合人脑。2、另一个思路就是直接模拟入栈出栈过程。虽然模拟毫无技巧可言,但复杂度O(n),优于算法1。适合电脑。代码如下:[java] view plain原创 2014-07-21 17:03:13 · 755 阅读 · 0 评论