ACM
文章平均质量分 69
piwwwiq
这个作者很懒,什么都没留下…
展开
-
zoj1002-Fire Net
原本打算用DFS写的,做完才发现思路变化了...神奇. 还有貌似按照老师的PDF,这题是出现并查集里面的...但是想不到怎么去并查.. #include#includeusing namespace std;char tmap[6][6],map[6][6];int num;void DFS(){ for(int i=1;i<=num;i++) for(int j=1原创 2012-11-30 14:26:41 · 542 阅读 · 0 评论 -
zoj1021-The Willy Memorial Program(WA)- -!
做到火大的题,还不知道为什么我wa,自己测试了多种情况都对,就是不知道还有什么情况没考虑.#include#includeusing namespace std;struct Pipe{ int x,y; int height;};struct Link{ int l,r; int y;};Pipe pi[21];Link lin[51];bool use[21]原创 2012-11-21 23:06:57 · 743 阅读 · 0 评论 -
zoj1091-Knight Moves
#include#includeusing namespace std;struct Node{ int x,y,pre;};struct offsets{ int x,y; };offsets kmove[8];int path(int rx,int ry,int m,int n){ int cboard[8][8]={0}; kmove[0].x=kmove[3]原创 2012-11-29 15:07:57 · 407 阅读 · 0 评论 -
zoj2613-Auction(STL实现~超时)
#include#include#includeusing namespace std;int main(){ multimap maps; int icase,k=1; cin>>icase; bool fl=false; while(icase--) { if(fl) cout<<endl; fl=true; maps.clear(); int va原创 2012-12-03 00:59:55 · 461 阅读 · 0 评论 -
zoj1731-Supermarket
#include#include#includeusing namespace std;const int N=10001;int arr[N];struct node{ int px,dl; bool friend operator < (node a,node b) { return a.px<b.px; }};int main(){ priority_que原创 2012-12-08 21:22:02 · 696 阅读 · 0 评论 -
zoj1049-I Think I Need a Houseboart.cpp
#include#includeusing namespace std;int main(){ int icase,year,k=1; double x,y,max; cin>>icase; while(icase--) { year=1; cin>>x>>y; max=sqrt(x*x+y*y); while(max>sqrt(year*100.0/3.14))原创 2012-11-08 15:48:46 · 350 阅读 · 0 评论 -
zoj1058-Currency Exchange.cpp
这里的四舍五入转换也可以换成m=(int)(m*100+0.5);m/=100; #include#includeusing namespace std;double MyRound(double num,int i) //num 为要舍入的,i为保留几位小数,返值为舍入后的:{ return int(num*pow(10.0,i)+0.5)/float(po原创 2012-11-08 15:50:24 · 487 阅读 · 0 评论 -
zoj2734-Exchange Cards
自己写的老超时,没办法,只能看别人的代码= =没想到那么简单就实现了...#includeusing namespace std;int Account;int cv[11],cn[11];int value,num,sum;void DFS(int step){ int i; if(sum==value) { Account++; return; } if(su转载 2012-11-28 17:13:10 · 1066 阅读 · 0 评论 -
zoj1411-Anniversary(wa)
这题不知道个人感觉这个方法来实现应该没有问题,但是不知道为什么就是wa,应该是什么情况没有考虑,找不到...有找到的希望看看我是先把每个人希望分到的大小按照从大到小排列,然后再从第一个格到最后一个搜索是否有空,如果有就检测有四个角有没有空如果有空就填充格如果都找不到空就输出找到失败,如果吧全部的输入都填充了格子,然后计算全部填充的是否达到不浪费总体是这样,但是就不知原创 2012-12-09 21:19:08 · 468 阅读 · 0 评论 -
zoj1788-Quad Trees
#include#include#include#includeusing namespace std;const int maxsize=512;char MAP[maxsize][maxsize];struct quadtree{ quadtree *q[4]; string value; bool operator == (quadtree temp) { ret原创 2012-11-10 23:22:54 · 1380 阅读 · 0 评论 -
zoj1789-The Suspects
#includeusing namespace std;int father[30001];int fine(int x){ int j,r=x; while(father[r]>0) r=father[r]; while(r!=x) { j=father[x]; father[x]=r; x=j; } return r;}void weightmerge(原创 2012-11-12 18:24:47 · 406 阅读 · 0 评论 -
2112-Dynamic Rankings(超时)
原本应该用BST来做的,不然会超时...那数据也太大了吧以下代码为简单的用STL排序做#include#include;using namespace std;int main(){ int i,num,peo,cod,len[50001];; char c; cin>>num; while(num--) { cin>>peo>>cod; for(i=1;i<=p原创 2012-11-14 01:44:29 · 287 阅读 · 0 评论 -
zoj1045-HandOver
#includeusing namespace std;int main(){ double sum=0,num,arr[100],temp; int i,k=0; cin>>num; while(num!=0.00) { i=1,sum=0.00; while(sum<=num) { temp=(1.00/(1.00+i++)); sum+=temp;原创 2012-11-07 23:09:53 · 961 阅读 · 0 评论 -
zoj2451-Minimizing maximizer(线段树,超时)
虽然说用了线段树, 但是还是超时...感觉是用vector的原因.希望各位指导指导!#include#include#includeusing namespace std;struct node{ int l,r; node *lc,*rc; int cover; node():cover(0),lc(NULL),rc(NULL){}};node *build(int a原创 2012-12-08 14:47:59 · 2326 阅读 · 0 评论 -
acm语录
特地转过来,激励一下自己!!转自:http://hi.baidu.com/sunnyykn/blog/item/f972f60841ad59c73bc76382.html于某天摘自zoj ranklist很经典!!O(∩_∩)O~1. 为了世界的和平,为了女生的安全,我拼命做题,做题,做题!2. A ac a day, keeps t转载 2012-12-06 23:12:22 · 584 阅读 · 0 评论 -
zoj2411-Link Link Look(WA)
个人认为错的例子都测试过没问题,还找不出哪里有问题= =但是就是wa,对比了ac代码一样的输入输出...#include#include#includeusing namespace std;const int pmove[4][2]={{0,1},{0,-1},{-1,0},{1,0}};//移动int N,M;int maze[102][102],tmaze[102][102]原创 2012-12-01 00:04:32 · 409 阅读 · 0 评论 -
zoj1094-Matrix Chain Multiplication
#include#includeusing namespace std;struct node{ char ch; int a,b;};node arr[27];int main(){ stack sta; int num,k=0; cin>>num; while(num--) { cin>>arr[k].ch>>arr[k].a>>arr[k].b; k++原创 2012-12-01 01:58:04 · 274 阅读 · 0 评论 -
zoj2511-Design T-Shirt(第二优先级比较)
这里自己写的代码就是不知道哪个数据错了,网上找了代码看看,学习了怎么第一优先级相同情况下通过第二优先级来判断.同时可见用STL和容器可以让代码如此简短和高效,要多多运用.先我自己的代码#include#includeusing namespace std;int main(){ int num; double pi[1001]; while(cin>>num) { int原创 2012-12-02 13:51:11 · 607 阅读 · 2 评论 -
zoj1507-Crazy Search
直接用set解决= =#include#include#includeusing namespace std;int main(){ set sets; bool flag=false; int icase; cin>>icase; while(icase--) { sets.clear(); if(flag) cout<<endl; flag=true原创 2012-12-03 02:44:49 · 701 阅读 · 0 评论 -
zoj1048-Financial Management
好吧,近来要复习考试内容.没时间刷题了.但是还是先刷个水题.#includeusing namespace std;int main(){ double a,b=0,sum=0; while(b++<12) { cin>>a; sum+=a; } cout.setf(ios::fixed); cout.precision(2); cout<<'$'<<sum/12<原创 2012-12-13 18:43:02 · 382 阅读 · 0 评论 -
10-15-knight'stour
#include#includeusing namespace std;#define MAX 16int pmove[8][2] = {{-1,2},{-1,-2},{1,2},{1,-2},{2,-1},{2,1},{-2,-1},{-2,1}};int board[MAX][MAX],n;bool knight(int k,int i,int j){ bool result;原创 2013-01-01 17:19:20 · 334 阅读 · 0 评论 -
ACM_Jungle Roads Prim实现
Jungle RoadsTime Limit: 2 Seconds Memory Limit: 65536 KB The Head Elder of the tropical island of Lagrishan has a problem. A burst of foreign aid money was spent on extra roads betwee转载 2012-10-28 13:08:00 · 381 阅读 · 0 评论 -
zoj1940-Dungeon Master
#include#include#includeusing namespace std;char maze[31][31][31];const int pmove[4][2]={{0,1},{0,-1},{-1,0},{1,0}};//移动int z;//多少组int n;//多少行int m;//多少列int sx,sy,ex,ey,sz,ez;int Dungeon();原创 2012-11-28 15:47:42 · 502 阅读 · 0 评论 -
zoj2212-Argus
#include#include#includeusing namespace std;struct node{ int ID; int Time; int sum; bool friend operator < (node a,node b) { return a.sum>b.sum; }};struct node_ID{ bool operator()(co原创 2012-12-02 03:42:22 · 584 阅读 · 0 评论 -
zoj2613-Auction(非STL实现.ac)
郁闷,老师给的PDF上是在STL的,但是用了multimap后就超时...重新写个能过的...不过也算是学习了点STL还有就是原来用STL里面的东西有些效率还是不是很高的(对于机器来说= =).以下是非STL的代码:#include#includeusing namespace std;struct node{ int val; int num; string name;//原创 2012-12-03 01:02:22 · 515 阅读 · 0 评论 -
zoj1959-Quadtree II
#include#include#include#include#includeusing namespace std;const int maxsize=512;char MAP[maxsize][maxsize];int n;struct quadtree{ quadtree *q[4]; string value; bool operator == (quadtre原创 2012-12-05 23:12:25 · 757 阅读 · 0 评论 -
zoj2334-Monkey King(超时)
这题我都不知道要怎么搞了.感觉在乱报错误,如果我把所有结果都输出-1报的错误是超时...如果不加入检测报的错误是运行时错误,如果加入的是范围检测就报分割错误...那么多错误= =,在我自己电脑上测试一点问题都没有...郁闷#include#includeusing namespace std;int father[100001];int fine(int x)//压缩,只用压缩时间原创 2012-12-09 01:17:37 · 451 阅读 · 0 评论 -
zoj1438-Asteroids!
这题完全是根据zoj1940改了一点输入输出...代码没多少变化.#include#include#include#includeusing namespace std;char maze[11][11][11];const int pmove[4][2]={{0,1},{0,-1},{-1,0},{1,0}};//移动int z;//多少组int n;//多少行int m;原创 2012-12-10 13:27:54 · 402 阅读 · 0 评论 -
zoj2615-Cells
超时= =,可以用数组的存储结构来计算出子父节点,应该不会超时,懒得写了...#include#include#include#includeusing namespace std;const int chnum=101;struct node{ int data; node *ch[chnum]; node() { for(int i=0;i<chnum;i++原创 2012-11-29 20:51:29 · 491 阅读 · 0 评论 -
zoj2097-Walking on a Chessboard
有点郁闷,我就像怎么老是wa,看了别人的代码才发现原来那个状态是这个意思,最可恶的就是cost一个要按照累计值,一个只是计算值= =题目一点都没有区别开来#include#include#include#includeusing namespace std;struct point{ int x,y; int state; int val;}start, temp, ot转载 2012-11-29 20:46:30 · 621 阅读 · 0 评论 -
zoj2724-Windows Message Queue
#include#include#includeusing namespace std;struct node{ int weight; int parameter; string name; bool friend operator < (node a,node b) { return a.weight>b.weight; }};int main(){ prio原创 2012-12-02 02:38:35 · 439 阅读 · 0 评论 -
zoj1076-Gene Assembly
其实这道题我觉得出的不严谨,因为有些情况没有很好判别例如输入5100 500500 700100 300300 700600 1000答案都是不同,看来zoj的判题也不是完全正确但是我忽略一些情况还是ac了#include#includeusing namespace std;struct node{ int x,y; int num; bool原创 2012-12-10 12:44:04 · 596 阅读 · 0 评论 -
zoj1016-Parencodings
#include#includeusing namespace std;int main(){ int icase,arr[21]; cin>>icase; while(icase--) { int size,num,temp=0,temp1,arrt=0,k=0; string str; cin>>size; for(int j=0;j<size;j++) {原创 2012-11-21 12:09:11 · 418 阅读 · 0 评论 -
zoj1203-Swordfish(Kruskal实现)
#include#include#includeusing namespace std;int father[101];int fine(int x)//压缩,只用压缩时间320{ int r=x,j; while(father[r]>0) r=father[r];//r是根 while(r!=x) { j=father[x]; father[x]=r;原创 2012-11-28 13:26:14 · 960 阅读 · 0 评论 -
zoj1203-Swordfish(prim实现)
#include#includeusing namespace std;const int Max=101;const double MAX=9999;int num;double prim();double map[Max][Max];//矩阵存储结构struct city{ double x,y;};int main(){ bool flag=false; int原创 2012-11-28 13:59:46 · 666 阅读 · 0 评论 -
zoj1423-(Your)((Term)((Project)))
#include#includeusing namespace std;int main(){ int num; cin>>num; bool fl=true; while(num--) { string str; char ch; int k=0; bool flag=false; if(fl) cin.get(); fl=false; whi原创 2012-12-02 00:51:07 · 376 阅读 · 0 评论 -
zoj1955-Quadtree
代码偷懒了下,没有简化#include#includeusing namespace std;const int maxsize=512;int MAP[maxsize][maxsize];int n;void DFS(int r,int c,int s){ char ch; int num,i,j; cin>>ch; if(ch!='Q') { if(ch=='W原创 2012-12-05 21:45:32 · 1029 阅读 · 2 评论 -
zoj1610-Count the Colors
先来看下有问题的代码,不知道为什么老是wa,跟我下面重写ac的代码对比我实在找不出有什么不同.怎么也不会是因为map的问题.只有是输入数据问题,我也试了很多刁钻的数据,但是还是找不出哪里不同= =#include#includeusing namespace std;int arr[8001];int main(){ int num; map maps; while(cin>>原创 2012-12-07 00:18:32 · 887 阅读 · 0 评论 -
zoj1149-Dividing
#include#includeusing namespace std;int arr[7];bool fl;void DFS(int num,int sum,int ar){ if(num==sum) { fl=true; return; } if(sum<num) { for(int i=ar;i>=1;i--)//分支递归 { if(arr[i])原创 2012-12-10 11:51:23 · 781 阅读 · 0 评论 -
zoj1005-Jugs
#includeusing namespace std;int main(){ int a,b,aim; while(cin>>a>>b>>aim) { int ra=0,rb=0; while(1) { if(aim==rb) { cout<<"success"<<endl; break; } if(rb==b) {原创 2012-11-16 22:25:47 · 351 阅读 · 0 评论