确定比赛名次

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 16947    Accepted Submission(s): 6711

Problem Description
有N个比赛队(1<=N<=500),编号依次为1,2,3,。。。。,N进行比赛,比赛结束后,裁判委员会要将所有参赛队伍从前往后依次排名,但现在裁判委员会不能直接获得每个队的比赛成绩,只知道每场比赛的结果,即P1赢P2,用P1,P2表示,排名时P1在P2之前。现在请你编程序确定排名。
Input
输入有若干组,每组中的第一行为二个数N(1<=N<=500),M;其中N表示队伍的个数,M表示接着有M行的输入数据。接下来的M行数据中,每行也有两个整数P1,P2表示即P1队赢了P2队。
Output
给出一个符合要求的排名。输出时队伍号之间有空格,最后一名后面没有空格。

其他说明:符合条件的排名可能不是唯一的,此时要求输出时编号小的队伍在前;输入数据保证是正确的,即输入数据确保一定能有一个符合要求的排名。

Sample Input
4 3 1 2 2 3 4 3
Sample Output
1 2 4 3代码:
#include<iostream>
#include<string.h>
#include<algorithm>
using namespace std;
int n,m,p1,p2,vis[505][505],degree[505],num[505];
void topo()
{for(int i=1;i<=n;i++){int j=1;while(degree[j]!=0)j++; //直到找到一个入度为0的点,加进去num[i]=j;degree[j]--;   //标记入度-1  for(int k=1;k<=n;k++//与此点相连点的入度减一if(vis[j][k])degree[k]--;}
}
int main()
{while(cin>>n>>m){memset(vis,0,sizeof(vis));memset(degree,0,sizeof(degree));for(int i=1;i<=m;i++){cin>>p1>>p2;if(vis[p1][p2]==0){ //这是一个坑,如果重复输入,会造成入度错误vis[p1][p2]=1;degree[p2]++;  //统计入度}}topo();for(int i=1;i<n;i++)cout<<num[i]<<' ';cout<<num[n]<<endl;}return 0;
}

hau 1825 第一道拓扑排序题相关推荐

  1. 拓扑排序题集【夏天的风】

    [HDU] 1285 确定比赛名次 2094 产生冠军 2647 Reward 3342 Legal or Not 1811 Rank of Tetris  拓扑+并查集 3231  Box Rela ...

  2. CSP-J2021第一轮C++试题第一道完善程序题详解

    源代码: #include <iostream> using namespace std; const int MAXN = 1000000; int F[MAXN]; int main( ...

  3. 拓扑排序-信息学奥赛

    拓扑排序 制作人:(CwinSpider) 文章目录 拓扑排序 一.前置知识 二.知识讲解 1. 什么是拓扑排序? 2. 拓扑排序的实现 3. 拓扑排序的应用 4. 拓扑排序的复杂度分析 三.课堂练习 ...

  4. hdu1285 拓扑排序+优先队列

    原题地址 这算是我个人AC的第一个拓扑排序题目吧. 题目解读 给出几组比赛的胜负情况.推断最后的排名.依据题意这就是一个明显的拓扑排序问题了. 注意 假设由于可能的排名有多种情况,这时要保证编号小的在 ...

  5. 拓扑排序[TopologicalSort]

    闲来无事,看到了拓扑排序就学习了一下. 拓扑排序: 算导上说是使用深搜来对有向无环图进行排序,得到一种线性次序.不过深搜的理解还理解不到.估计是深搜学的不怎么样吧! 说说我理解的这个线性次序吧.我认为 ...

  6. HDU 3342 Legal or Not(拓扑排序)

    描述 ACM-DIY is a large QQ group where many excellent acmers get together. It is so harmonious that ju ...

  7. hdu 1520 Anniversary party(第一道树形dp)

    传送门: http://acm.hdu.edu.cn/showproblem.php?pid=1520 Anniversary party Time Limit: 2000/1000 MS (Java ...

  8. Leetcode 1436旅行终点站 拓扑排序 并查集与队列

    题目介绍 题目难度: easy 给你一份旅游线路图,该线路图中的旅行线路用数组 paths 表示,其中 paths[i] = [cityAi, cityBi] 表示该线路将会从 cityAi 直接前往 ...

  9. 数学智力题 武士数独题目_这6道数学智力题,我琢磨一上午也无解,结果被一个学霸全部搞定...

    数学智力题不同于普通的试题,它是集趣味性.智力测验等元素为一体的数学题目.长期坚持做数学智力题有利于开发人们的大脑智力.特别是对于学生来说,这种数学智力题能够让他们的思维变得更加的灵活.再加上智力题本 ...

  10. 数学智力题 武士数独题目_这6道数学智力题,我琢磨一上午也无解,你敢挑战吗?...

    原标题:这6道数学智力题,我琢磨一上午也无解,你敢挑战吗? 数学智力题不同于普通的试题,它是集趣味性.智力测验等元素为一体的数学题目.长期坚持做数学智力题有利于开发人们的大脑智力.特别是对于学生来说, ...

最新文章

  1. CF803C Maximal GCD
  2. Kafka背后公司获1.25亿融资,估值超25亿美元
  3. PostgreSQL SQL 语言:数据定义
  4. 自动化测试在CI CD管道中的作用
  5. ie系列浏览器_2020下半年河北教师资格准考证打印只能用ie浏览器吗
  6. 找不到图片素材,看这里
  7. 深入浅出 eBPF: (Linux/Kernel/XDP/BCC/BPFTrace/Cillium)
  8. 机器学习基础(四十四)—— 优化
  9. myBatis + SpringMVC上传、下载文件
  10. [转]【eoeAndroid索引】史上最牛最全android开发知识汇总
  11. java判断日期是否是本月_Java写一个函数判断一个日期是否在本月之内
  12. 高中计算机数学,高中数学必修5
  13. 基于云开发的成语答题小程序
  14. win10如何删除计算机用户,在WIN10账户下怎么删除administrator账户
  15. 仿制苏宁易购—静态网页
  16. 微信小程序uni-app
  17. java 对汉字(中文)的汉语拼音(发音)进行排序工具类(代码实现)
  18. erdas遥感图像几何校正_实验二 ERDAS遥感图像的几何校正
  19. 万物互联背景下的边缘计算安全需求与挑战
  20. 【好工具】安利一款优秀的图片浏览器

热门文章

  1. mcinabox运行库下载_MCinaBox运行库下载
  2. 判断魔方阵c语言程序设计_魔方阵原理及十种解法(C语言)
  3. 澤天夬 (易經大意 韓長庚)
  4. java设计模式的六大原则
  5. Java HTML导出PDF (二)
  6. MS-TCN: Multi-Stage Temporal Convolutional Network for Action Segmentation
  7. Html制作知识库管理系统,知识库管理系统(源码+数据)
  8. 蓝奏云自定义域名链接替换网站源码
  9. 【数字设计与计算机体系结构】2021-09-26-数字设计与计算机体系结构课程(四)
  10. 用grldr启动ISO