CTSC'93
跳棋
在一个矩阵中定义一种跳棋的规则:
它的基本类型是这样:|1|2| | -> | | |1|
但棋①只能向上方、左方、右方跳动吃子。
如图1:棋B可跳至3位吃去棋C;棋C可跳至2位吃去棋B;
棋B可跳至1位吃去棋A;棋A不可跳至4位吃去棋B。
现要求实现以下两个任务:
任务1:寻求一个初始状态,使之经过一系列走步使只有第一行有一枚棋子。
规定一个棋盘,宽度不大于8,长度不知有多少。定义一个n(0≤n≤4),使初始状态中前n+1行无棋子。
要求最佳。(棋子数最少)
任务2:寻求一个初始状态,使之经过一系列走步使只有第一行有二枚中有m个空格的棋子。(0≤m≤6)
规定棋盘,宽度不大于8,长度不知有多少。定义一个n(0≤n≤4),使初始状态中前n+1行无棋子。
要求最佳。(棋子数最少)
CTSC'93
多项式与列表转换
首先定义一种多项式的表示方式:
如有这样一个多项式:
3a5b3+2a2b2+ab3+b+6 提取的顺序为a b ;
且要求a b分别为降幂排列。
转换为如下形式:
(3b3+0b2+0b+0b0)a5+0a4+0a3+(2b2+0b+0b0)+(b3+0b2+0b+0b0)a+(b+6b0)a0
将各变无去掉,加号用‘,’代替,外面再套一个括号,即可转为一个列表形式:
((3,0,0,0,),0,0,(2,0,0,),(1,0,0,0,),(1,6))
现要求实现以下两个任务:
任务1:
1.输入一个列表形式及变元的提取顺序和升降幂排列(建议升幂、降幂分别用一个符号表示)。
2.将这一列表形式转换为一个多项式,并将该多项式转换为不带括号的最简形式输出。
任务2:
1.输入新的变元的提取顺序和升降幂排列。
2.输出新的列表表示形式。