
算法设计
文章平均质量分 75
Dingle_Captain
志同道合励志成为大神的小菜们或者已经在大神的路上越走越远的牛人们,可有漫漫长路上经历的故事,咱们加下微信,坐下喝喝小茶细细道来。
展开
-
习题8-6 起重机(Crane,ACM/ICPC CERC2013,UVa1611)
题目大意:通过一系列操作使一个1~n的序列变为升序,每次操作可以选一个长度为偶数的连续区间,交换前一半和后一半。 思路:从序列第一位开始,查找对应值(若为第一位则查找1,第二位查找2,以此类推)。若查找位置与查找到的值的位置相距长度为偶数,则以查找位置与查找到的值得位置的中心进行交换操作;若查找到的位置与查找到的值的位置相距长度为奇数,则以查找位置的后一位与查找到的值的位置的中心进行交换操作。如原创 2017-08-14 15:55:33 · 577 阅读 · 0 评论 -
UVa12545 比特交换器 习题8-2
题意:输入两个等长的串s1,s2。s1含有'1','0','?',s2含有‘1’,‘0’,通过最少的步骤,讲s1变换为s2,每个步骤可以对s1进行一次操作,操作分为三种:将‘0’变为‘1’、将‘?’变为‘1’或‘0’、将任意两个字符交换。 思路:首先不管问号变为什么,含有一个问号就必定变化一次,然后计算出除问号外s1需要变为‘1’(s1为0,s2为1)和‘0’(s1为1,s2为0)的数量,二者哪原创 2017-08-14 16:36:59 · 266 阅读 · 0 评论