确定比赛名次

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

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 <cstdio>
#include <cstring>
using namespace std;
int indir[510],Map[510][510];
int main()
{int n,m;int p1,p2;while (~scanf("%d%d",&n,&m)){memset(Map,0,sizeof(Map));memset(indir,0,sizeof(indir));for (int i=1; i<=m; i++){scanf("%d%d",&p1,&p2);if (!Map[p1][p2])//如果为0,变为一 {Map[p1][p2]=1;//p1 love p2indir[p2]++;}}int j;for (int i=1; i<=n; i++){for (j=1; j<=n; j++)if (indir[j]==0){if (i!=n)printf ("%d ",j);elseprintf ("%d\n",j);break;}indir[j]--;for (int k=1; k<=n; k++){if (Map[j][k]==1)indir[k]--;}}}return 0;
}

拓扑排序杭电 1285确定比赛名次相关推荐

  1. 杭电1285确定比赛名次

    确定比赛名次 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Sub ...

  2. [ACM] hdu 1285 确定比赛名次 (拓扑排序)

    确定比赛名次 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Sub ...

  3. HDU 1285 - 确定比赛名次(拓扑排序)

    确定比赛名次 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Sub ...

  4. HDU 1285 确定比赛名次 拓扑排序(邻接矩阵 邻接表

    确定比赛名次 Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u Description ...

  5. hdoj 1285 确定比赛名次 【拓扑排序】

    确定比赛名次 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Sub ...

  6. HDOJ 1285 确定比赛名次(拓扑排序)

    2018-5-23 简单的拓扑排序,我用的是优先队列,按照字典序排序,将入度为零的点放入队列, 则直接按照字典序排序. 需要注意的是:如果有两个重复的数据,则相应的入度值就不应该加一了. #inclu ...

  7. HDOJ -- 1285 确定比赛名次

    确定比赛名次 Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u Description ...

  8. hdu 1285 确定比赛名次

    //拓扑排序裸题,题目要求按编号从小到大输出,要换一种思维去思考 //按照数据结构课本的算法,建立邻接表,用栈实现.初始化先将入度为0的顶点入栈,然后以栈顶顶点为准,先将栈顶顶点出栈输出它的信息,然后 ...

  9. 手撕图论专题一 拓扑排序

    aa拓扑排序是图论里非常重要一部分内容,它可以用来判断图内有无回路,还有非常重要的应用(之后会以oj题目形式展开) 那么什么是拓扑排序--图论中,由一个有向无环图的顶点组成的序列,当且仅当满足下列条件 ...

最新文章

  1. LeetCode Coin Change(动态规划)
  2. 项目上线,php的错误信息必须不让其在页面中显示给客户,
  3. python开发windows界面_electron作为python界面开发入门
  4. 2、FreeRTOS任务相关API函数
  5. 磁盘调度 FCFS、SSTF、SCAN 算法c++实现(大学生专用)
  6. JavaScript实现countSetBits设置位的数量算法(附完整源码)
  7. 上传文件到华为云云服务器,上传文件到云服务器
  8. django开发 遇到的问题解决
  9. UVA 11237 - Halloween treats(鸽笼原理)
  10. 【XS128】Link error L1822 symbol _FADD / _FSUB/ _FDIV/ _FMUL.....错误解决的方法
  11. 给Activity设置背景色
  12. Javaparser使用
  13. 【神经网络】学习笔记五—循环神经网络RNN简介1.0
  14. Shell脚本实现判断一个数是否为质数
  15. 机器翻译的流程(原理)是怎么样的?
  16. excel表格数字显示不全_Excel表格中输入数字最后几位数变成0的解决方法
  17. 《编程的原则:改善代码质量的101个方法》读书笔记
  18. OSI模型工作模式解析
  19. linux内存占用过高怎么解决,centos7内存占用过高处理方法
  20. C++课程设计(校车订票管理系统)

热门文章

  1. QList模板类常用接口函数
  2. 面试宝典系列-PHP变量在内存中的存储方式
  3. 菜鸟学Linux 第007篇笔记 简单命令的使用讲解(文本、时间、目录)
  4. Spark使用总结与分享
  5. WebHook 与jenkins
  6. 控件不能与用户交互的原因
  7. 加密解密、Openssl、自建CA
  8. Linux上DNS实现工具之bind详叙
  9. officescan客户端迁移和升级
  10. 【转载】给不同 type 的 input 自动设置样式