HDU1285 - 确定比赛名次 拓补排序

HDU1272 - 小希的迷宫 并查集检测无向图的环 HDU1272 - 小希的迷宫 利用并查集检测无向图的环 阅读详情

HDU1285 - 确定比赛名次 :http://acm.hdu.edu.cn/showproblem.php?pid=1285

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;
const int MAXN = 510;
int Map[MAXN][MAXN],In[MAXN],Ans[MAXN];
int N,M;
int x,y;
int cnt;
void Initial()
{
	cnt = 0;
	memset(Map,0,sizeof(Map));
	memset(In,0,sizeof(In));
	memset(Ans,0,sizeof(Ans));
}
void TopoSort()
{
	int i,j,k;
	for(i = 1;i <= N;i++)//记住编号是1 -> N的 
	{
		for(j = 1;j <= N;j++)
		{
			if(!In[j])
			{
				In[j]--,Ans[cnt++] = j;//将入度为0的点取出来,题目要求从小到大输出不确定的排名,因为我们是从1 -> N搜索的,直接保存答案即可 
				for(k = 1;k <= N;k++)//去除所有由j引出的边,即j指向的节点入度减一 
					if(Map[j][k])
						In[k]--;
				break; 
			}
		}
	}
	for(i = 0;i < N;i++)//输出 
		if(i == N - 1)
			printf("%d\n",Ans[i]);
		else 
			printf("%d ",Ans[i]);
}
int main()
{
	while(~scanf("%d%d",&N,&M))
	{
		Initial();
		while(M--)
		{
			scanf("%d%d",&x,&y);
			if(!Map[x][y])
				Map[x][y] = 1,In[y]++;//Map[x][y]表示x赢了y,In[y]表示y的入度. 
		}
		TopoSort();
	}
	return 0;
}


HDU1558 - Segment set 并查集 + 判断线段相交 阅读详情

相关推荐

HDU2473 - Junk-Mail Filter 利用虚拟数组实现删除并查集的节点

HDU2473 - Junk-Mail Filter 增加一个虚拟数组,实现"删除"并查集某个节点的功能

P_rogrammer的专栏 744

HDU 1285确定比赛名次(拓补排序)

确定比赛名次 Time Limit: 2000/1000 MS (Java/Others)Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 5871Accepted Submission(s): 2190 Problem Description 有N个比赛队(1<=N<=500),编号依次为...

weixin_34337381的博客 107

信创改造实战:SpringBoot项目迁移到宝兰德BES 9.5.5的完整避坑指南(附依赖配置)

本文详细介绍了将SpringBoot项目迁移到宝兰德BES 9.5.5中间件的完整流程,包括环境准备、依赖调整、Web.xml版本适配、部署配置优化及常见问题解决方案。特别针对信创改造需求,提供了排除Tomcat依赖、处理BES专用starter等实用技巧,帮助开发者顺利完成国产中间件迁移。

weixin_30825581的博客 1095

HDU 1285 确定比赛名次

点击打开链接 确定比赛名次 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 7493    Accepted Submission(s): 2879 Problem Description 有N个比赛

代码改变世界,keep coding。 1199

高斯投影坐标正反算算法(python)

高斯坐标正反算算法,在正算的时候,y的第一个数字表示是用几度带换算的,第二个数字和第三个数字表示带号。该程序是根据武汉大学出版社出版的第三版的《大地测量学基础》编写, 用于课程实验学习。

weixin_64338372的博客 4586

【ESP32-S3量产指南】基于Flash下载工具实现Release模式Flash加密与安全配置

本文详细介绍了ESP32-S3量产阶段如何通过Flash下载工具实现Release模式下的Flash加密与安全配置。从加密模式选择、工具配置到分区表优化,提供了一套完整的量产安全解决方案,帮助开发者有效防止固件泄露和篡改,确保设备安全。

weixin_28730131的博客 230

HDU1285:确定比赛名次(拓扑排序)

确定比赛名次 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 24877    Accepted Submission(s): 9982 Problem Description 有N个比赛队(1  

junior19的博客 422

SAP 接口测试操作-业务顾问

业务顾问测试接口操作

weixin_43657667的博客 5156

hdu 1285 拓补排序

确定比赛名次 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 6056    Accepted Submission(s): 2275 Problem Description 有N个比赛队(1

Paradiser 744

树莓派 SPI操作

扩展板配备一款0.96inch,128864分辨率的oled显示屏,通过SPI控制,先上显示效果图。由于程序过长,在这里我就不把代码全部贴出来了,只是简单讲解一下spi的操作函数。管脚如下如所有,左边方框的管脚分别为MOSI MISO SCLK,左边CE0,CE1为两个片选管脚,分别对应上图中的spidev0.0,spidev0.1两个设备。下载spidev库,复制到树莓派,并行运行如下命令解压安装。spi设备,此处设备为/dev/spi-decv0.0。在/dev路径下面,我们可以发现两个spi设备。

weixin_46529898的博客 914

【数字孪生工业应用实战】第2篇:数字孪生系统架构设计与技术选型——从“作秀”到“实干”的骨架构建

本文系统剖析了数字孪生系统从“作秀”到“实干”的架构设计关键。针对多数项目在POC转生产时因架构混乱、选型盲目而失败的问题,深入阐述了四层分层架构(感知层、传输层、模型层、应用层)的设计原则,重点解析了感知层的异构适配与边缘预处理、传输层的异步解耦与多模式通信等工程细节。结合OPC UA、MQTT、EdgeX Foundry等主流技术选型对比,以及汽车焊装车间边缘智能网关的实战代码,提供了从零搭建微型孪生系统的完整指导。旨在帮助工程师建立清晰的选型决策逻辑,构建稳定、可演进的数字孪生“骨架”。

专注于人工智能、软件开发、工控自动化、工厂数字化及智能化等领域,希望和大家共同进步! 264

HDU --- 1285 确定比赛名次

最简单的拓补排序 用邻接矩阵模仿来写的 大数据可能处理不了 题意: 中文题直接看链接吧 #include&lt;iostream&gt; #include&lt;string&gt; #include&lt;queue&gt; #include&lt;cstring&gt; #include&lt;cstdio&gt; using namespace std ; /* 思路: 直接...

大梦小半 164

CondaHTTPError: HTTP 404 not found for url https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs解决方案

本文主要介绍了CondaHTTPError: HTTP 404 not found for url https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main解决方案,希望能对使用xx的同学们有所帮助。 文章目录 1. 问题描述 2. 解决方案

weixin_43178406的博客 17万+

拓扑排序学习(Topological Sort)

拓扑排序的通过下面这个例题来体现吧: hdu1285 确定比赛名次 题意:   给出两个数n,m,分别代表n个数,m个关系,接下来就是m对数x,y,代表x在y的前面;  要求输出  满足这m对关系式 并且编号小的在前面的序列。 原理: 对n个数记录他们的入度,如果入度为0的话就说明没有元素依赖于这个元素,说明这个数就可以加入到队列中了,不过这里还要求编号小的元素在前面,

Everything can be done! 545

37、深入解析SCTP与RTP传输协议

本文深入解析了SCTP与RTP两种重要传输协议。SCTP提供可靠的多流数据传输,支持关联管理、选择性确认和错误处理,适用于高可靠性场景;RTP则专注于实时音视频数据的低延迟传输,配合RTCP实现质量监控。文章详细介绍了两种协议的数据结构、工作流程及应用场景,并对比其特性,帮助开发者根据可靠性、实时性和多流需求选择合适的协议。

time3的博客 83

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

HDU 1285

B -确定比赛名次 Time Limit:1000MSMemory Limit:32768KB64bit IO Format:%I64d & %I64u Description 有N个比赛队(1<=N<=500),编号依次为1,2,3,。。。。,N进行比赛,比赛结束后,裁判委员会要将所有参赛队伍从前往后依次排名,但现...

weixin_30451709的博客 100

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Codeforces Round 997 (Div. 2) A~C

至此,天鹅完成了连续四场比赛在四个不同比赛上四次分的壮举!(ABC388,CodeChef169,牛客月赛109,CF997)这场难度很有问题啊,D题断层太大了吧,不过还好我前面写得快,真就手速场。

swan416的博客 1150

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

HDU1102 - Constructing Roads 用优先队列优化Prim最小生成树

HDU1102 - Constructing Roads 用优先队列优化Prim最小生成树

P_rogrammer的专栏 1576

HDU1863 - 畅通工程 最小生成树的并查集方法实现

HDU1863 - 畅通工程 最小生成树的并查集方法实现

P_rogrammer的专栏 1466

HDU1863 - 畅通工程 Prim最小生成树算法

HDU1863 - 畅通工程 Prim最小生成树算法,中午是用并查集的方法AC的,现在换个姿势,再来一次= =!

P_rogrammer的专栏 943

HDU5154 - Harry and Magical Computer 拓补排序

HDU5154 - Harry and Magical Computer 拓补排序

P_rogrammer的专栏 855

HDU1233 - 还是畅通工程 最小生成树,用了三种姿势AC

HDU1233 - 还是畅通工程 最小生成树,用了三种姿势AC

P_rogrammer的专栏 837

HDU4324 - Triangle LOVE 拓补排序

HDU4324 - Triangle LOVE 拓补排序

P_rogrammer的专栏 807

HDU2094 - 产生冠军 冠军: 总人数 - 失败过的人数 = 1

HDU2094 - 产生冠军 冠军: 总人数 - 失败过的人数 = 1

P_rogrammer的专栏 800

HDU2222-Keywords Search AC自动机

HDU2222-Keywords Search AC自动机算法

P_rogrammer的专栏 742

HDU1856 - More is better 利用并查集找最大群体数目

HDU1856 - More is better 利用并查, 集找最大群体数目

P_rogrammer的专栏 723
上一篇: HDU1558 - Segment set 并查集 + 判断线段相交
下一篇: HDU2094 - 产生冠军 冠军: 总人数 - 失败过的人数 = 1
P_rogrammer
博客等级 码龄12年 0粉丝 26原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值