首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

确定赛事名次(谢庆皇)

2012-08-15 
确定比赛名次(谢庆皇)http://acm.hdu.edu.cn/webcontest/contest_showproblem.php?cid1325&pid1001&ojid

确定比赛名次(谢庆皇)

http://acm.hdu.edu.cn/webcontest/contest_showproblem.php?cid=1325&pid=1001&ojid=0点击打开链接

Problem DescriptionInputOutputSample Input#include<iostream>#include<string>using namespace std;int map[505][505];//map[i][j]表示i赢j是否是真的 int s[505]; //s[i]表示队伍i输掉的次数int main(){ int n,m,i,j,x,y;//freopen("in.txt","r",stdin); while(cin>>n>>m){memset(map,0,sizeof(map));memset(s,0,sizeof(s));for(i=0;i<m;i++){cin>>x>>y;if(map[x][y]==0) //如果没有记录过就记录。{ map[x][y]=1;s[y]++;}}int x=0;while(x<n) //要输出n个数{ if(x)cout<<" ";for(i=1;i<=n;i++)//寻找入度为0且编号小的点{if(s[i]==0) { cout<<i; s[i]=-1;//下次不会再访问 break;}}for(j=1;j<=n;j++) //序号是从1到n的。{ if(map[i][j]) //将上面那个没输过指向的输过次数减一。(//把与i相关的边全删掉 ) s[j]--;}x++;} //whilecout<<endl;}//whilereturn 0;}


 

热点排行