快速业务通道

POJ 1694 C++ £¨??Dò£?

作者 佚名技术 来源 程序设计 浏览 发布时间 2012-06-29

//2??á??£?ê????′1y±eè?μ??áìa±¨??oó??μ?£??§?°??

#include<iostream>
#include<algorithm>
using namespace std;
typedef struct Node
{ int label;
?? int cnt;
?? int leaf[200];
};
Node tree[200];
int solve(int i)
{?? int??stone[200],result,temp;
????if(tree[i].cnt==0)
?????? return 1;
???? for(int j=0;j<tree[i].cnt;j++)
???????? stone[j]=solve(tree[i].leaf[j]);
???? sort(stone,stone+tree[i].cnt);
???? result=stone[tree[i].cnt-1];
???? temp=result-1;
???? for(int k=tree[i].cnt-2;k>=0;k--)
????????{ if(temp-stone[k]>=0)
???????????? temp--;
?????????? else
???????????? {result=result+stone[k]-temp;
??????????????temp=stone[k]-1;
??????????????}
???????? }
?????? return result;
}
int main()
{ int n,m;
??freopen("in.txt","r",stdin);
??freopen("out.txt","w",stdout);
??scanf("%d",&n);
??while(n--)
?????? { scanf("%d",&m);
???????? for(int i=1;i<=m;i++)
???????????? {??scanf("%d%d",&tree[i].label,&tree[i].cnt);
????????????????for(int j=0;j<tree[i].cnt;j++)
?????????????????? scanf("%d",&tree[i].leaf[j]);
??????????????}
???????? printf("%d\n",solve(1));
?????? }
?? return 0;
}

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号