码迷,mamicode.com
首页 > 编程语言 > 详细

【uva 10570】Meeting with Aliens(算法效率--暴力+贪心)

时间:2016-11-11 22:47:23      阅读:185      评论:0      收藏:0      [点我收藏+]

标签:序列   with   ref   这不   其他   nbsp   哈哈   时间   位置   

题意:输入1~N的一个排列,每次可以交换2个整数,问使排列变成1~N的一个环状排列所需的虽少交换次数。(3≤N≤500)

解法:(又是一道我没打代码,光想和看就花了很久时间的题~QwQ)由于n很小,可以暴力枚举目标的环状排列,于是贪心交换——把元素 x 直接与它的目标位置上的元素互换,这样至少使1个元素的位置正确了。而若 x 先与其他 k 个元素交换,是最多能得到 k+1 个元素的正确排列的,这样并没有之前的策略优。
    另外,网上关于此题还有一种关于对链状序列找环的说法,我更加不理解。若有人能解释给我听,我会万分感谢的!?(^∀^●)?(这不是说笑的,就算是我AFO了,我也不时会回来看看的。(●`?(?)?´●)毕竟这些都是自己辛勤耕耘的记录吧,哈哈~) UVA 10570 Meeting with Aliens 外星人聚会

注意——题目都是先从直接低效的做法想起,再一步步优化的,所以暴力要会!ヽ(=^?ω?^=)丿

【uva 10570】Meeting with Aliens(算法效率--暴力+贪心)

标签:序列   with   ref   这不   其他   nbsp   哈哈   时间   位置   

原文地址:http://www.cnblogs.com/konjak/p/6055681.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!