题目内容
(请给出正确答案)
问题描述:现有k种不同价值的宝石,每种宝石都有足够多颗.欲将这些宝石排列成一个m行n列的矩阵,
算法设计:对于给定的m、n和k,以及每种宝石的规定数量,计算出不同的宝石排列方案数.
数据输入:由文件input.txt给出输入数据.第1行有3个正整数m,n和k(0<m≤n<9).
第2行有k个数,第j个数表示第j种宝石在矩阵的每行和每列出现的最多次数.这k个数按照宝石的价值从小到大排列.设这k个数为
则
.
结果输出:将计算的宝石排列方案数输出到文件output.txt.

如果结果不匹配,请 联系老师 获取答案
更多“问题描述:现有k种不同价值的宝石,每种宝石都有足够多颗.欲将…”相关的问题
,要求n元0-1向量
,
使得
而且
达到最大.


例如,当n=12时,有8种不同的分解式:


定义为


上的乘法表如表3-1所示.对任一定义于Σ上的字符串,适当加括号后,得到,个表达式.例如,对于字符串x=bbba,它的一个加括号表达式为(b(bb)(ba).依乘法表,该表达式的值为a试设计一个动态规划算法,对任一定义于Σ上的字符串 计算有多少种不同的加括号方式,使由x导出的加括号表达式的值为a.
,计算有多少种不同的加括号方式,使由x导出的加括号表达式的值为a.