[编程题] 困兽之斗
经过深思熟虑之后,小贱君打算去M国闯一闯,那是一个古老的东方国度,传说有很多高阶魔法师,他想成为一名伟大的魔法师,将来征服星辰大海。
经过千辛万苦,小贱君终于来到了M国,不幸的是刚进城门小贱君就被M国的守城士兵困在了一种叫做“困兽之斗”的阵法之中。
士兵对小贱君说:“看到漂浮在你身边的宝石了吗?彩虹连接的两颗宝石可以任意交换位置,你需要通过一系列交换后使得宝石组成的字符串的字典序最小。若不能破阵,那还是请回吧!”
小贱君观察了一下周围的宝石,只见每颗宝石上标有一个小写字母,而且有一些宝石上通过彩虹与其他宝石相连。
琢磨了半天,他终于搞懂了这个阵法的意思:
若宝石系列为:dcba
其中有两道彩虹,分别是(0,1),(1,2),代表第一个位置上的宝石可以和第二个位置上的宝石互换,第二个位置上的宝石可以和第三个位置上的宝石互换,最终可以得到字典序最小的宝石系列:bcda。
作为小贱君的死党,你有什么方法帮助他破阵吗?
输入描述:
输入包含多组测试数据。
对于每组测试数据:
字符串s --- 代表宝石序列
n --- 代表有n条彩虹
接下来n行,每行两个数ai,bi --- 表示ai和bi由一条彩虹相连。
保证:
1<=s的长度<=10000
1<=n<=10000
且输入数据均合法。
输出描述:
对于每组数据,输出一个字符串
输入例子:
dcba 2 0 1 1 2 hellonowcoder 4 0 1 1 4 2 5 2 3
输出例子:
bcda ehllonowcoder思路: 并查集 + 排序 把能互相连通的字母,进行排序
[编程题] 困兽之斗相关推荐
- [JS] [编程题] 配置文件恢复
[编程题]配置文件恢复 时间限制:C/C++ 1秒,其他语言2秒空间限制:C/C++ 32M,其他语言64M 链接:https://www.nowcoder.com/questionTerminal/ ...
- Linux编程题:信号量同步三进程依次打印若干次ABC
三个进程依次打印ABC..... 思路及大致流程如下: 思路取自这位大哥: Linux编程题:创建3个线程分别打印abc,用信号量进行同步_cleverlemon的博客-CSDN博客 这位大哥写的是线 ...
- c语言编程题餐饮服务打分,求详细分析C语言题餐饮服务质量调查打分题和答案..._质量员考试_帮考网...
bangsaizhuo 新兵答主 11-09 TA获得超过6761个赞 二.填空题 1. ___变量__是指在程序运行过程中,值可以发生变化的量. 2.C语言是一种____区分_(区分/不区分)字母大 ...
- 数据结构面试题编程题_您下次编程面试时应该了解的顶级数据结构
数据结构面试题编程题 by Fahim ul Haq 通过Fahim ul Haq Niklaus Wirth, a Swiss computer scientist, wrote a book in ...
- java在线编程题_阿里笔试题(2017在线编程题)-- 数串分组 --Java实现
看到有人写了阿里的面试题,心里痒痒,好久 没搞过这些了,写着实现一下 题目 2017年3月阿里在线编程题(实习内推) 给定一串数字 判断是否存在这三个元素,它们将数字串分为四个子串,其中每个子串的数字 ...
- JavaScript初学者编程题(25)
JavaScript初学者编程题(25) 题目:给定一个字符串,请将字符串里的字符按照出现的频率降序进行重新排列并返回 第一种方法,利用对象和数组 JavaScript部分 var str = &qu ...
- JavaScript初学者编程题(24)
JavaScript初学者编程题(24) 题目:给你一个 m x n 的整数网格 accounts ,其中 accounts[i][j] 是第 i 位客户在第 j 家银行托管的资产数量.返回最富有客户 ...
- JavaScript初学者编程题(23)
JavaScript初学者编程题(23) 题目:给你一个字符串 S,请你删去其中的所有元音字母( 'a','e','i','o','u'),并返回这个新字符串 HTMl部分 <input typ ...
- JavaScript初学者编程题(22)
JavaScript初学者编程题(22) 题目:利用递归方法求5! JavaScript部分 function getNum(num) {if(num < 2){return 1;}else{r ...
最新文章
- Go在windows10 64位上安装过程
- Roger Ver:BCH比BCE更适合机构投资者
- Visual Studio 2017 15.8概览
- C语言程序设计模拟卷,C语言程序设计(上)模拟卷
- python 搭建web应用程序_用Python构建数据科学Web应用程序
- vs2010 利用DMP文件、pdb文件查找release下的异常行号的方法
- 【数据结构与算法】之深入解析“排序链表”的求解思路与算法示例
- 【每日SQL打卡】​​​​​​​​​​​​​​​DAY 24丨找到连续区间的开始和结束数字【难度中等】​
- Node操作Mysql的简单例子
- CentOS上快速安装Oracle11g数据库
- 数据保护法规可被滥用于人肉 GitLab 用户和接管账户
- python列表中存类对象_python中对类的操作,怎么增加或删除类中的对象呢?比如下面这个题...
- 树形dp贪吃的九头龙(vijos1523)
- 常用触摸屏485通讯引脚及下载口
- 获取TrustedInstaller权限
- Oracle GoldenGate for Oracle 11g(Solaris 10 x86-64) to Oracle 10g(CentOS 4.8) configuration
- linux中的各文件的颜色含义
- 淘金网UCskype即时通讯软件定制
- android anr 分析方法,Android ANR分析
- 飞冰 前端开发的一些坑
热门文章
- 我的世界服务器个体值怎么修改,我的世界神奇宝贝个体值指令 | 手游网游页游攻略大全...
- 格局大小决定你的人生高度---the height of your life depends on the size of your life pattern.
- 记录第一次因为技术出差(自嘲一番吧)
- 可敬可悲硅谷人 科技富豪失乐园
- 中兴OLT ZXA10 C200 V1.1.3P2T6固件
- 我的世界java版mac切视角_我的世界怎么视角切换攻略 第三人称视角
- JavaScript实现H5游戏断线自动重连的技术
- 开始菜单找不到anaconda,如何做?
- c语言中%加字母是啥意思,%C是什么意思? C语言中%c,%s分别代表什么意思?
- 2007年中国地方门户网站市场规模达6.1亿元