问题描述:
魔术师手中有A、2、3……J、Q、K十三张黑桃扑克牌。在表演魔术前,魔术师已经将他们按照一定的顺序叠放好(有花色的一面朝下)。魔术表演过程为:一开始,魔术师数1,然后把最上面的那张牌翻过来,是黑桃A;然后将其放到桌面上;第二次,魔术师数1、2;将第一张牌放到这些牌的最下面,将第二张牌翻转过来,正好是黑桃2;第三次,魔术师数1、2、3;将第1、2张牌依次放到这些牌的最下面,将第三张牌翻过来正好是黑桃3;……直到将所有的牌都翻出来为止。问原来牌的顺序是如何的。
/**
* @file 魔术师发牌问题.cpp
* @Synopsis
* 问题描述:
* 魔术师手中有A、2、3……J、Q、K十三张黑桃扑克牌。在表演魔术前,魔术师已经将他们按照一定的顺序叠放好(有花色的一面朝下)。魔术表演过程为:一开始,魔术师数1,然后把最上面的那张牌翻过来,是黑桃A;然后将其放到桌面上;第二次,魔术师数1、2;将第一张牌放到这些牌的最下面,将第二张牌翻转过来,正好是黑桃2;第三次,魔术师数1、2、3;将第1、2张牌依次放到这些牌的最下面,将第三张牌翻过来正好是黑桃3;……直到将所有的牌都翻出来为止。问原来牌的顺序是如何的。
* 答案:1 8 2 5 10 3 12 11 9 4 7 6 13
* @author weih.cao
* @version
* @date 2014-08-06
*/
#include <iostream>
using namespace std;
#define N 13
typedef struct Node
{
int data;
Node *next;
}Node,*LinkList;
/* *

魔术师表演中,每次根据数数将翻转的黑桃扑克按序放入,从A到K。通过观察这一过程,我们可以推断原来牌的顺序。问题挑战读者解析这一魔术的秘密。
最低0.47元/天 解锁文章
790

被折叠的 条评论
为什么被折叠?



