安徽科技工程大学程序设计在线考试系统Ver3.0

诚信考试,杜绝作弊!

1339: 算法实现题 2-4 马的 Hamilton周游路线问题

内存限制:512 MB 时间限制:1 S 标准输入输出
题目类型:传统 评测方式:文本比较

题目描述

8·8 的国际象棋棋盘上的一只马,恰好走过除起点外的其它 63 个位置各一次,最后回 到起点。这条路线称为一条马的 Hamilton 周游路线。对于给定的 m·n 的国际象棋棋盘,m 和 n均为大于 5 的偶数,且|m-n|≤2,试设计一个分治算法找出一条马的Hamilton周游路线。
 «算法设计: 对于给定的偶数 m,n≥6,且|m-n|≤2,计算 m·n 的国际象棋棋盘一条马的 Hamilton 周 游路线。 

输入格式

输入第一行有 2个正整数m和 n,表示给定的国际象棋棋盘 由 m行,每行 n个格子组成

输出格式

将计算出的马的 Hamilton周游路线用下面的 2 种表达方式输出, 

第 1 种表达方式按照马步的次序给出马的 Hamilton 周游路线。马的每一步用所在的方 格坐标(x,y)来表示。x表示行的坐标,编号为 0,1,…,m-1;y表示列的坐标,编号为 0, 1,…,n-1。起始方格为(0,0)。 

第 2 种表达方式在棋盘的方格中标明马到达该方格的步数。(0,0)方格为起跳步,并 标明为第 1步。 

输入样例 复制

6 6

输出样例 复制

(0,0) (2,1) (4,0) (5,2) (4,4) (2,3) 
(0,4) (2,5) (1,3) (0,5) (2,4) (4,5) 
(5,3) (3,2) (5,1) (3,0) (1,1) (0,3) 
(1,5) (3,4) (5,5) (4,3) (3,1) (5,0) 
(4,2) (5,4) (3,5) (1,4) (0,2) (1,0) 
(2,2) (0,1) (2,0) (4,1) (3,3) (1,2) 

1 32 29 18 7 10 
30 17 36 9 28 19 
33 2 31 6 11 8 
16 23 14 35 20 27 
3 34 25 22 5 12 
24 15 4 13 26 21