UVa 200 Rare Order (拓扑排序)

uva 200~299 22道题解 均accept 均accept,绝对实用,题目较多不一一点出 立即下载

200 - Rare Order

Time limit: 3.000 seconds 

http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=24&page=show_problem&problem=136


题意:给一列单词,这些单词是按一种未知的字典顺序排列的,要求输出这些字母的顺序。


思路:很明显,拓扑排序。

注意最后要多输出一个换行,否则会WA!


完整代码:

/*0.016s*/

#include<bits/stdc++.h>
using namespace std;

list<int> l[27];
char last[25], now[25];
bool has[27], vis[27];
int ans[27], cnt;

void dfs(int i)
{
	vis[i] = true;
	if (l[i].size())
		for (list<int>::iterator iter = l[i].begin(); iter != l[i].end(); ++iter)
			if (!vis[*iter]) dfs(*iter);
	ans[cnt++] = i;
}

int main()
{
	int len, i;
	gets(last);
	has[last[0] & 31] = true;
	while (gets(now), now[0] != '#')
	{
		len = min(strlen(last), strlen(now));
		for (i = 0; i < len; ++i)
		{
			if (last[i] != now[i])
			{
				has[last[i] & 31] = has[now[i] & 31] = true;
				l[last[i] & 31].push_back(now[i] & 31);
				break;
			}
		}
		memcpy(last, now, sizeof(now));
	}
	for (i = 1; i < 27; ++i)
		if (has[i] && !vis[i]) dfs(i);
	for (i = cnt - 1; i >= 0; --i)
		putchar(ans[i] + 'A' - 1);
    putchar(10);///尝试加了个换行,就AC了,果然是我太年轻。。。
	return 0;
}

UE5 StateTree实战:用分层状态机重构你的AI行为逻辑(附蓝图配置避坑点) 本文详细介绍了UE5中StateTree分层状态机的实战应用,帮助开发者重构AI行为逻辑。通过核心概念解析、迁移策略、高级技巧和避坑指南,展示了StateTree在灵活性、可维护性和并行处理方面的优势,特别适合复杂AI行为的开发与优化。 阅读详情

相关推荐

FOC:【1】浅析SVPWM算法(七段式)以及MATLAB仿真验证

最近的科研项目需要使用到SVPWM算法,网上相关的原理介绍很多。对于纯应用的需求来说,或许有些内容上的冗余。 本文的目的就是简要并且明确的给出具体的计算步骤,可以帮助快速上手。同时利用MATLAB进行了简单算法验证。.....................

Alex的技术博客 1万+

uva 200拓扑排序

// //  main.cpp //  ceshi // //  Created by 戴之阳 on 2016/11/. //  Copyright © 2016年 sky.dai. All rights reserved. // // //  main.cpp //  ceshi // //  Created by 戴

Dzy929076300的博客 614

[调参神器]使用VOFA+上位机进行PID调参(附下位机代码)

​ 简单地来说,VOFA+是一个超级串口助手,除了可以实现一般串口助手的串口数据收发,它还可以实现数据绘图(包括直方图、FFT图),控件编辑,图像显示等功能。​ 如果只是想要用VOFA+来进行数据绘图,直接使用一个波形图控件就行,但是如果想要把VOFA+当作一个长期使用的调参助手,我们最好设置一下控件。VOFA+简洁好用,但是又有点太简洁了,部分体验并不是很好(比如不能调整控件大小,保存文件不太方便等),所以如果学有余力,推荐自己用QT/PyQT写上位机。接下来,我们要将指令中的数据提取出来。

qq_56089182的博客 4万+

uva 200 Rare Order 拓扑排序

题意:给若干行按了yi dia

vickey 710

无人机航拍图像匹配——SIFT算法实践(含代码)

无人机航拍图像匹配——SIFT算法实践(含代码)

zhangzhao147的博客 6394

语义通信高斯信道仿真代码

【代码】语义通信高斯信道仿真代码。

一去不复返的通信er 427

【uva-200】Rare Order(拓扑排序过的第一道)

题目大意: 输入一堆按新的字母排序从小到大排好的字符串,#作为结束。 求新的字母排序规则。思路: 不知道一共多少组所以两个两个比较咯。 注意dfs第一个得到的是最小的字母。 是反序的要用stack倒着输出。

UPUP&TOPTOP 374

新能源知识库(62)组串式、集中式和高压直挂式

因需多台PCS及独立监控设备,单位功率成本比集中式高15%–20%。高压直挂式因省去变压器,大容量项目成本更低(>5MW时优势显著)。组串式储能、集中式储能和高压直挂式储能是当前主流的三类技术路线,其核心差异源于系统架构和控制逻辑的设计差异。组串式交流侧需变压器升压至10kV/35kV,高压直挂式可直接输出6kV/35kV电压,减少转换损耗。多台小功率PCS并联(每簇独立管理)单台大功率PCS(多簇直流侧并联)环流导致容量衰减(损失5%–8%)无变压器损耗(效率>99%)高压直挂电站(≥10MW)

竹君子之家 1515

UVA 200 (拓扑排序)

没加换行引发的一场悲剧呀 #include&lt;iostream&gt; #include&lt;cstdio&gt; #include&lt;algorithm&gt; #include&lt;cstring&gt; #include&lt;string&gt; #include&lt;map&gt; #include&lt;vector&gt; #include&lt;cmath&

兜率工的博客 335

ArcGIS插值可视化气象数据

前言 地图底图的制作和气象数据的预处理见我上两篇博客 ArcGIS精美中国地图制作(详解) python处理日值气象数据 在前面我们已经将日值的地温数据处理成了年均地温,添加了站点经纬度坐标并导出为excel格式。 得到如下数据: 导入数据 在Arcmap中 文件-添加XY数据 将年均地温和站点位置数据导入。 注意:excel表格的格式要另存为97-2003工作簿形式,否则会有"arcgi...

江北20190411的博客 2万+

C# 【WebService编写调用】

😹 觉得博主文章写的不错的话,希望大家三连(✌关注,✌点赞,✌评论),多多支持一下!!!

只有登上山顶,才能看到那边的风光 1173

UVa 200 - Rare Order

题目:给你一些大写字母构成的序列,他们按照特殊的字典序给出,输出已知关系的字母顺序。 分析:图论,拓扑排序。利用dfs求拓扑排序,记录回来的时间戳,逆序输出即可。             因为是偏序关系,具有传递性,所以只要比较相邻两串即可。 说明:最后要加一个换行╮(╯▽╰)╭。#include #include #include #include #include #inclu

小白菜又菜 2396

Linux8.3上装Oracle 19c RAC,ssh互信总报INS-06006?别急着下补丁,试试这个临时替换scp的骚操作

本文针对在Linux 8.3上安装Oracle 19c RAC时遇到的SSH互信报错INS-06006问题,提供了一个无需官方补丁的临时解决方案。通过创建SCP包装脚本并添加-T参数,有效解决了OpenSSH 8.x版本与Oracle安装程序的兼容性问题,帮助用户顺利完成安装流程。

weixin_30764883的博客 403

UVA200 LA5139 Rare Order【拓扑排序】

A rare book collector recently discovered a book written in an unfamiliar language that used the same characters as the English language. The book contained a short index, but the ordering of the item...

海岛Blog 642

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

uva 200 Rare Order (拓扑排序)

uva  200 - Rare Order  (拓扑排序) 先求出大小关系的邻接矩阵,然后拓扑排序 #include #include #include #include #include #include using namespace std; int a[30][30],degree[30]; vector ans; void input(){ i

炒饭君的博客 1224

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

UVa:200 Rare Order(拓扑排序)

题意:按序给你一些字符串,要你输出它们的字典序 思路:根据前后两个字符串第一个不同的字符来确定有向关系建图,拓扑排序就行了。 #include #include #include #include #include #include #include #include using namespace std; int main() { string str1

Fighting 1265

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

UVA-200 Rare Order 拓扑排序

Rare Order Time Limit:3000MS Memory Limit:Unknown 64bit IO Format:%lld & %llu [Submit] [Go Back] [Status] Description Rare Order A rare ...

weixin_33893473的博客 98

ACM UVa 算法题 #200 - Rare Order的解法

题目链接在这里:ACM UVa #200 - Rare Order本题的解法相对简单:对于输入的所有字符串,只需两两比较,每个字符串可以获得一个不等关系(或者无法获得),如:ZXYZXW可以知道Y 按照此种方法依次两两比较,可以获得多个不等关系。当有了不等关系之后,下一步是如何根据不等关系得到这些字符的Order。最有效的方法是拓扑排序(Topology Sort):首先对

张羿的优快云专栏 3865

UVa 200 Rare Order

这篇文章探讨了一个关于语言字母顺序推断的问题。题目给出了一组按某种特殊语言排序规则排列的字符串,要求根据这些字符串推导出该语言的字母顺序。作者提出了一种基于拓扑排序的解决方案,通过构建字符间的有向关系图并进行拓扑排序来确定字母顺序。文章详细介绍了算法思路、代码实现和复杂度分析,并强调了输入输出的处理方式。该方法高效可靠,能够正确处理题目给定的约束条件,最终输出符合要求的字母顺序。

寂静山林 325

uvaLive 5139 (world final 1990 - Washington) Rare Order

题意是给定一个字符串的排列规则,即这个排序是按照特定的字符排序排下来的,要求输出已经给出来的全部字符的排列顺序。这个题是用拓扑排序做的,首先将每两个字符串能得到的规则进行比较,然后得到一张有向图。然后寻找出度为0的,则为最小,然后删掉所有以此的出度。以此类推。这里因为只有字母,所以主要复杂度就在于全部字符的排列规则的判定。我用向量处理这里未知的字符串数量,用时惊人啊,不过还是1Y了。下面是代码。

qiueji的专栏 424

UVa OJ 题解索引

寂静山林 755

UVa 200题记录

小白菜又菜 1112
上一篇: UVa 11371 Number Theory for Newbies (water ver.)
下一篇: UVa 12261 High Score (贪心&“向左走,向右走”)
synapse7
博客等级 码龄14年 432粉丝 701原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值