poj 2367 Genealogical tree(topsort)

农业杂草检测——棉花杂草数据集 然后将本层13×13的特征图谱经过×2上采样扩充到26×26,并与上层中26×26的特征图谱拼接,得到新的26×26的特征图谱,在该特征尺度上进行第二次预测,此时得到的特征图谱是相对输入图像16倍下采样,具有中尺度感受野,适合检测中等尺度对象;通过目标检测,能够及时清除杂草,减少病虫害的滋生和传播,保障棉花的健康生长,并有助于降低生产成本。对于地膜覆盖的棉田,由于膜内耕作层土温高、底墒好,杂草出苗早而集中,一般覆膜后5 - 7天杂草陆续出土,在墒情好的情况下,15天左右即形成出土高峰。 阅读详情

Language:
Genealogical tree
Time Limit: 1000MS Memory Limit: 65536K
Total Submissions: 3063 Accepted: 2072 Special Judge

Description

The system of Martians' blood relations is confusing enough. Actually, Martians bud when they want and where they want. They gather together in different groups, so that a Martian can have one parent as well as ten. Nobody will be surprised by a hundred of children. Martians have got used to this and their style of life seems to them natural. 
And in the Planetary Council the confusing genealogical system leads to some embarrassment. There meet the worthiest of Martians, and therefore in order to offend nobody in all of the discussions it is used first to give the floor to the old Martians, than to the younger ones and only than to the most young childless assessors. However, the maintenance of this order really is not a trivial task. Not always Martian knows all of his parents (and there's nothing to tell about his grandparents!). But if by a mistake first speak a grandson and only than his young appearing great-grandfather, this is a real scandal. 
Your task is to write a program, which would define once and for all, an order that would guarantee that every member of the Council takes the floor earlier than each of his descendants.

Input

The first line of the standard input contains an only number N, 1 <= N <= 100 — a number of members of the Martian Planetary Council. According to the centuries-old tradition members of the Council are enumerated with the natural numbers from 1 up to N. Further, there are exactly N lines, moreover, the I-th line contains a list of I-th member's children. The list of children is a sequence of serial numbers of children in a arbitrary order separated by spaces. The list of children may be empty. The list (even if it is empty) ends with 0.

Output

The standard output should contain in its only line a sequence of speakers' numbers, separated by spaces. If several sequences satisfy the conditions of the problem, you are to write to the standard output any of them. At least one such sequence always exists.

Sample Input

5
0
4 5 1 0
1 0
5 3 0
3 0

Sample Output

2 4 5 3 1

Source




直接的topsort,有两种做法,一种dfs  ,一种 用数据结构的方法


dfs代码:


#include<iostream>
#include<cstring>
#include<algorithm>
#include<cstdio>
#include<queue>
#include<stack>
#include<vector>
using namespace std;

#define N 105
int a[N][N];
int vis[N],ans[N];
int n,m;

int dfs(int x)
{
	vis[x]=-1;
	int i;
	for(i=1;i<=n;i++)
	  if(a[x][i])
	  {
	  	if(vis[i]==-1)
			return 0;
		else
			if(!vis[i]&&!dfs(i))
			return 0;
	  }

	 vis[x]=1;
     ans[--m]=x;
     return 1;
}

void print()
{
	int i;
	for(i=0;i<n-1;i++)
		printf("%d ",ans[i]) ;
	printf("%d\n",ans[n-1]);
}

int main()
{
	int i,j,x;
	while(~scanf("%d",&n))
	{
		memset(vis,0,sizeof(vis));
		memset(a,0,sizeof(a));
		for(i=1;i<=n;i++)
		{
			while(1)
			{
				scanf("%d",&x);
				if(!x) break;
				a[i][x]=1;
			}
		}
          m=n;
         for(i=1;i<=n;i++)
			if(vis[i]==0)
			   if(!dfs(i))
			    break;
		print();
	}

   return 0;
}





数据结构代码:


#include<iostream>
#include<cstring>
#include<algorithm>
#include<cstdio>
#include<queue>
#include<stack>
using namespace std;

#define N 105

int a[N][N];
int vis[N],ans[N];
int n,m;

int dfs(int x)
{
	vis[x]=-1;
	int i;
	for(i=1;i<=n;i++)
	  if(a[x][i])
	  {
	  	if(vis[i]==-1)
			return 0;
		else
			if(!vis[i]&&!dfs(i))
			return 0;
	  }

	 vis[x]=1;
     ans[--m]=x;
     return 1;
}

void print()
{
	int i;
	for(i=0;i<n-1;i++)
		printf("%d ",ans[i]) ;
	printf("%d\n",ans[n-1]);
}

int main()
{
	int i,j,x;
	while(~scanf("%d",&n))
	{
		memset(vis,0,sizeof(vis));
		memset(a,0,sizeof(a));
		for(i=1;i<=n;i++)
		{
			while(1)
			{
				scanf("%d",&x);
				if(!x) break;
				a[i][x]=1;
			}
		}
          m=n;
         for(i=1;i<=n;i++)
			if(vis[i]==0)
			   if(!dfs(i))
			    break;
		print();
	}

   return 0;
}









国产麒麟系统下用Rider开发C#桌面应用:从环境配置到Avalonia UI实战 本文详细介绍了在国产麒麟系统上使用JetBrains Rider开发C#桌面应用的完整流程,重点讲解了Avalonia UI框架的实战应用。从环境配置、Rider安装到Avalonia项目创建和UI开发技巧,全面覆盖了在非Windows环境下进行C#开发的关键步骤和优化建议,助力开发者高效构建跨平台桌面应用。 阅读详情

相关推荐

RK3588s Camera ISP调优详解(一)ISP调试工具及环境配置(附下载途径)

本文主要介绍了rkisp tuner工具的连接与使用,并附上了工具及依赖库的下载地址

zongheng_raobo的博客 6269

poj2367 Genealogical tree

Genealogical tree Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 2600   Accepted: 1743   Special Judge Description The system of Martians' blood relations

bad 777

2022北京高考数学压轴题21题:Python暴力枚举验证k≥7的5种反例

本文探讨了2022北京高考数学压轴题21题的编程解法,通过Python暴力枚举验证k≥7的5种反例。文章详细介绍了m-连续可表数列的定义、问题转化与约束条件,并提供了暴力枚举算法设计和优化技巧,帮助读者理解如何用编程思维解决数学问题。

weixin_33552698的博客 232

[Nowcoder] 有向无环图 | 拓扑排序简单应用

链接 题目描述 Bobo 有一个 n 个点,m 条边的有向无环图(即对于任意点 v,不存在从点 v 开始、点 v 结束的路径)。 为了方便,点用 1,2,…,n1, 2, \dots, n1,2,…,n编号。 设 count(x,y)\mathrm{count}(x, y)count(x,y) 表示点 x 到点 y 不同的路径数量(规定 count(x,x)=0\mathrm{count}(x, x) = 0count(x,x)=0,Bobo 想知道 ∑i=1n∑j=1ncount(i,j)⋅ai⋅bj\s

PushyTao的博客 260

GSEA富集分析实战:从数据准备到结果解读的完整R代码指南

本文提供了一份完整的GSEA富集分析实战指南,涵盖从R环境准备、数据质量控制到基因ID转换、参数优化和结果解读的全流程。通过详细的R代码示例和实用技巧,帮助研究人员高效完成基因集富集分析,特别针对生物信息学中常见的GSEA分析痛点提供了专业解决方案。

weixin_29246195的博客 536

同花顺 python量化交易_开启量化第一步!同花顺iFinD数据接口免费版简易操作教程...

来源:雪球App,作者: 同花顺-iFinD,(https://xueqiu.com/6706494343/141951051)金融市场波动频繁,投资往往会夹杂非理性的情绪。而量化交易,旨在以先进的数学模型替代人为的主观判断,利用计算机技术从庞大的历史数据中海选能带来超额收益的多种“大概率”事件以制定策略,辅助投资者进行理性投资。不过计算机分析存在一定的技术门槛,有没有简单易学的量化交易方式,能够...

weixin_35911805的博客 2万+

POJ 2367 (裸拓扑排序)

http://poj.org/problem?id=2367 题意:给你n个数,从第一个数到第n个数,每一行的数字代表排在这个行数的后面的数字,直到0。 这是一个特别裸的拓扑排序的一个题目,拓扑排序我也是刚刚才接触,想法还是挺简单的。实现起来也不复杂。 1 #include <stdio.h> 2 #include <string.h> 3 ...

A1823085974的博客 322

ISO15118-20协议测试实战:用Efficient XML库验证26条命令编解码(附完整代码)

本文分享了ISO15118-20协议测试实战经验,重点探讨了使用Efficient XML库对26条命令进行EXI编解码验证的过程。通过搭建测试环境、编写自动化程序并与官方工具链进行交叉比对,文章深入分析了4条命令编码结果不一致的原因,并提供了完整的排查思路与C代码示例,旨在帮助开发者确保电动汽车充电通信的协议一致性。

weixin_29284657的博客 108

拓扑入门 poj2367 Genealogical tree

这是

wuhulala的休息室 2009

Python爬取公交线路信息及站点shp数据 文末附数据下载地址

三、现在已经获取到了各个线路名称、链接,以及所途径的上下行站点,那么接下来就应该对开始对第三页url进行信息采集,即本次爬虫的最终目的:爬取所有站点的GPS坐标数据。但坑就坑在,二环一号线属于环线,所以只有左侧有站点数据,而其他非环线车次的站点数据分有上下行,如果用正则匹配,则分不清楚到底哪些是上行站点哪些是下行站点。以前爬过百度地图,当时用的是API平台,加上网站比较规范,所以标签节点什么的都比较清晰,但这次由于特殊原因所选择的网站为公交网,废话不多说直接开始吧。checi=二环一号线。

J_Giser的博客 1316

YOLOv8 Neck改进:BiFPN双向特征金字塔网络解析与实践

本文详细介绍了如何在YOLOv8中集成BiFPN双向特征金字塔网络,包括原理解析、代码实现、配置文件修改和性能分析。BiFPN通过双向特征融合和加权特征机制,显著提升了多尺度目标检测的性能。希望通过本文的讲解,大家能够深入理解BiFPN的工作原理,并成功将其应用到自己的目标检测项目中。如果你有任何问题或建议,欢迎在评论区留言讨论!在下一篇文章中,我们将探讨YOLOv8的其他改进技术,包括注意力机制、新的损失函数等,敬请期待!

QQ_778132974的博客 988

家族树问题

拓扑排序

实践求真知 211

【动态导通电阻】GaN功率器件中动态导通电阻退化的机制、表征及建模方法

研究目的:鉴于动态RON退化对GaN功率器件性能的显著影响,本文旨在全面综述和讨论GaN功率器件中动态RON退化的机制、表征方法、建模技术以及解决方案,以期为GaN功率器件的设计、优化和应用提供理论指导和实践参考。内容概述:文章首先分析了缓冲层陷阱和栅极不稳定导致动态RON退化的物理机制,并通过物理基础的TCAD模拟与高压背栅测量结果进行对比,揭示缓冲层陷阱的充电/放电过程如何影响动态RON。接着,讨论了不同GaN器件技术中栅极不稳定引起的动态RON增加以及栅极过驱动的作用。

荷塘阅色 1166

poj2367 Genealogical tree (最基本的topsort)

题目:http://poj.org/problem?id=2367 题解:最基本的拓扑排序,没什么好说的,连是否存在环都不用判断 直接上代码吧:188k,0ms //poj2367 #include #include #include using namespace std; #define M 105 int g[M][M]; int du[M],p[M]; bool

791

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

拓扑排序模板题-POJ 2367(Genealogical tree )

点击打开题目链接本题是拓扑排序的模板题,如果还不知道什么是拓扑排序的同学,可以参看这位大神博客里面的手动模拟拓扑排序的过程,相信看完以后你就会懂了什么是拓扑排序了。(链接:https://blog.youkuaiyun.com/qq_35644234/article/details/60578189)回到这道题,都说了是一道模板题,所以肯定不是很难,但是题面是非常的磨人的,不仔仔细细看根本不知道要求什么,样例...

wookaikaiko的博客 872

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

拓扑排序---(poj 2367)

拓扑排序   对一个有向无环图(Directed Acyclic Graph简称DAG)G进行拓扑排序,是将G中所有顶点排成一个线性序列,使得图中任意一对顶点u和v,若边(u,v)∈E(G),则u在线性序列中出现在v之前。通常,这样的线性序列称为满足拓扑次序(Topological Order)的序列,简称拓扑序列。简单的说,由某个集合上的一个偏序得到该集合上的一个全序,这个操作称

Randyhe_的博客 965

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

POJ 2367 (入门拓扑排序 )

POJ 2367 题意:知道一个数n, 然后n行,编号1到n, 每行输入几个数,每行以0结尾,输出一种符合要求的编号名次排序。 思路:入门题,理解   “ 度 ” 和 map[ ] [ ]的关系。 #include #include #include using namespace std; #define M 110 int main() { int n;

Since_natural_ran 592

POJ2367(拓扑序列入门_JAVA代码)

这个题是一道很明显的拓扑序列入门题,直接套用拓扑序列模板即可。依次删除掉入度为0的结点并输出即可AC。 先找到一个入度为0的结点,然后删除它,并把它所有后继结点的入度减一,依次类推下去。直到找不到入度为0的结点或是所有点都删除完 import java.util.ArrayList; import java.util.Deque; import java.util.LinkedLi...

u011367271的博客 549

链式前向星+POJ2367Genealogical tree

前向星是一种特殊的边集数组,我们把边集数组中的每一条边按照起点从小到大排序,如果起点相同就按照终点从小到大排序,并记录下以某个点为起点的所有边在数组中的起始位置和存储长度,那么前向星就构造好了。如果说邻接表是不好写但效率好,邻接矩阵是好写但效率低的话,前向星就是一个相对中庸的数据结构。前向星固然好写,但效率并不高。而在优化为链式前向星后,效率也得到了较大的提升。虽然说,世界上对链式前向星的使用并不是很广泛,但在不愿意写复杂的邻接表的情况下,链式前向星也是一个很优秀的数据结构。——摘自《百度百科》

weixin_73654895的博客 197

POJ2367拓扑排序入门

#include #include #include #define MAX 110 typedef struct nn{ int data[MAX]; int top; }nn; nn ms; int vis[MAX]; int mp[MAX][MAX]; int res[MAX]; int flag,n,fla; int check(int x) { int i;

seekforcode的专栏 556

poj 2367(拓扑排序TopSort)

题意简单,说到底就是求符合的拓扑排序。 代码如下: #include #include #include #define maxn 100 using namespace std; struct edge { int v, next; }; int g[maxn], n, list[maxn]; edge e[maxn*maxn]; bool topsortdfs( int

zgkdzw的专栏 779

poj 2367

题意  :给你一些顶点,先是输入总顶点数,第几行就代表以该数字为起点,这一行里面的值则代表该行的起点会指向哪些点,当顶点为0时,则表示该行的输入结束,输入另一行的元素,然后输出拓扑排序。   拓扑排序是指 在一个有向图中,找出入度为0的那个顶点,然后输出该顶点,去掉该顶点指向其他顶点的边,然后对应的顶点的入度要减1.  然后重新在图中找入度为0的顶点,然后输出该顶点,去掉该顶点指向其他顶点的边,然

phperHe 710

拓扑排序:POJ2367 家族树

题目描述: The system of Martians' blood relations is confusing enough. Actually, Martians bud when they want and where they want. They gather together in different groups, so that a Martian can have one parent as well as ten. Nobody will be surprised ...

qq_48988844的博客 225

POJ2367

/*题意:第一行输入n,代表有n个节点 下面有i=1 到 i=n行,代表与第i个节点相连的节点 i相当于父亲节点,第i行的数字是i的儿子节点, 当第i行输入为0时,停止对该行的输入 将这些节点按辈分从大到小输出 拓扑排序模板题 输入时先用map把各个节点存起来 ,以题目为例 5 0 4 5 1 0 1 0 5 3 0 3 0 map[2][4] = 1, map[2][5]

uyret的博客 472

poj2367拓扑排序模版题

方法一: 采用二位数组的形式(也可以用邻接表形式) #include<iostream> #include<algorithm> #include<cstring> #include<cmath> #include<queue> using namespace std; const int maxx=1e3+10; const int inf=0x3f3f3f3f; int n; int indegree[maxx]; int vis[maxx]

Keep_Trying_Go的博客 474

Genealogical tree (拓扑排序)

题目:The system of Martians' blood relations is confusing enough. Actually, Martians bud when they want and where they want. They gather together in different groups, so that a Martian can have one parent as well as ten. Nobody will be surprised by a hundred

qq_61037155的博客 306
上一篇: HDU 1505 City Game(01矩阵 dp)
下一篇: HDU 1811 Rank of Tetris(topsort)
左眼皮跳跳~
博客等级 码龄13年 17粉丝 400原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值