描述
第三道算法题:洗牌
将一堆牌平均分成两堆(如果牌数是奇数,则左手比右手多一张),然后先放右手最下面的一张牌,然后放左手最后一张牌,依次类推。然后再洗。
输入: n表示有n张牌,k表示洗k次,然后再跟上牌的序号。
输出:洗完牌后的序列(使用空格分开)
测试用例:7 2 1 2 3 4 5 6 7 // 表示有1 2 3 4 5 6 7 这7张牌,要洗2次。
初始:1 2 3 4 || 5 6 7
第一轮:1 2 5 3 || 6 4 7
第二轮:1 6 2 4 5 7 3
实现
1 |
|