由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - 偶三年多前写的东东 Re: 8-puzzle
相关主题
昨天那个算法题怎么没了?新手问个mysql 问题
问一个随机排列的问题.a simple question for C++ class
请教一个排列组合的编程问题puzzled C++ code, please help (with attachment)
怎么产生全排列?RegEx puzzle
超简单一道题问个算法问题
Intel为什么选用little endian? (转载)A C++ question
问个排列组合的问题。。。不知道怎么回答1和2这两个问题
aws 入门 谁给个学习顺序?A C++ puzzle for me
相关话题的讨论汇总
话题: puzzle话题: 状态话题: 排列话题: 前写话题: 空白
进入Programming版参与讨论
1 (共1页)
a******e
发帖数: 95
1
发信人: glider (sui sui), 信区: Algorithm
标 题: 小小总结一把 Re: 再来一题
发信站: 南京大学小百合站 (Thu Aug 9 07:52:45 2001), 站内信件
100多年前有一位同学不知怎么想的就发明了15-puzzle,但是这个游戏得到风靡
的一个原因是这位给出了1000元的奖金,悬赏第一个成功将一个状态移到目标状态
的智者。结果没有人能够拿到这笔巨款,因为这个问题无解,除非耍赖。
后来呢,就有人发现15-puzzle的状态可以均分为两个状态集:同一状态集中的
任意两个状态可以相互转换,非同一状态集的则不能。证明后一半不难,先从8-puzzle
开始,目标状态是:
1 2
3 4 5
7 8 9
对任意一个状态,如果按照从左到右,从上到下的顺序列出,去掉空白,就是
一个8个数的排列了。如果空白左右移动,排列不变。如果空白上下移(如果可以的话,
相当于排列中的某一数向前或向后移2个位置,不难证明新的排列逆序数齐偶性不变。
所以无论空白如何移,其产生的
1 (共1页)
进入Programming版参与讨论
相关主题
A C++ puzzle for me超简单一道题
learning C or C++ or C#Intel为什么选用little endian? (转载)
openssl dgst question问个排列组合的问题。。。
Algorithms and Data Structures那本比较好呢?aws 入门 谁给个学习顺序?
昨天那个算法题怎么没了?新手问个mysql 问题
问一个随机排列的问题.a simple question for C++ class
请教一个排列组合的编程问题puzzled C++ code, please help (with attachment)
怎么产生全排列?RegEx puzzle
相关话题的讨论汇总
话题: puzzle话题: 状态话题: 排列话题: 前写话题: 空白