魔术2
来源:互联网 发布:22lr子弹淘宝 编辑:程序博客网 时间:2024/05/15 03:25
魔术师再次表演,他将红桃和黑桃全部迭在一起,牌面朝下放在手中,对观众说:最上面一张是黑桃A,翻开后放在桌上。以后,从上至下每数两张全依次放在最底下,第三张给观众看,便是黑桃2,放在桌上后再数两张依次放在最底下,第三张给观众看,是黑桃3。如此下去,观众看到放在桌子上牌的顺序是:
黑桃 A 2 3 4 5 6 7 8 9 10 J Q K
红桃 A 2 3 4 5 6 7 8 9 10 J Q K
问魔术师手中牌的原始顺序是什么?
*问题分析与算法设计
本题可在上题的基础上进行编程,不同的在于计数的方法和牌的张数,这些并不影响我们求解题目的思路,仍可按照倒推的方法,得到原来魔术师手中的牌的顺序。
The original order of cards is:(r:rad b:black):
b1 r6 b10 b2 r12 r3 b3 b11 r9 b4 r7 b12 b5
r4 r13 b6 b13 r11 b7 r5 r1 b8 r8 r10 b9 r2
黑桃 A 2 3 4 5 6 7 8 9 10 J Q K
红桃 A 2 3 4 5 6 7 8 9 10 J Q K
问魔术师手中牌的原始顺序是什么?
*问题分析与算法设计
本题可在上题的基础上进行编程,不同的在于计数的方法和牌的张数,这些并不影响我们求解题目的思路,仍可按照倒推的方法,得到原来魔术师手中的牌的顺序。
#include <stdio.h>int a[27];int main(){ int i, n, j = 1; a[1] = 1; printf("The original order of cards is:(r:rad b:block):\n"); for (i = 2; i <= 26; i++) { n = 1; do{ if(j > 26) j = 1; if(a[j]) j++; else { if(3 == n) a[j] = i; j++; n++; } }while(n <= 3); } for (i = 1; i <= 26; i++) { printf("%c",a[i] > 13 ? 'r': 'b'); printf("%d ",a[i] > 13 ? a[i] - 13 : a[i]); } printf("\n"); return 0;}
The original order of cards is:(r:rad b:black):
b1 r6 b10 b2 r12 r3 b3 b11 r9 b4 r7 b12 b5
r4 r13 b6 b13 r11 b7 r5 r1 b8 r8 r10 b9 r2
阅读全文
0 0
- 魔术2
- 魔术索引2
- 魔术
- 魔术
- 魔术
- 魔术对骑士3:2
- PHP的魔术方法2
- php魔术方法 总结2
- 【魔术】硬币魔术
- 程序员面试金典2——魔术索引2
- 总结2: PHP中的魔术方法及其应用场景
- [网络流24题-2]cogs396魔术球问题
- classloader魔术
- 橡皮筋魔术
- 魔术引号
- 魔术符号
- 魔术数
- 魔术方法
- Working with form fields---2
- leetcode39. Combination Sum
- ubuntu16.04LTS更换阿里源
- ASP.NET MVC4中@model使用多个类型实例的方法
- Thinking in java-8 单继承和多态
- 魔术2
- 51单片机学习第三天
- 主题五 内存管理的艺术----32.头疼的野指针
- Working with form fields---1
- Python规范
- 虚树
- 6.18-Python-语言及其应用-笔记-像高手一样玩转数据-未完!
- 流畅的python--字典中的散列表
- binding之component