问题描述:最优求幂问题:给定一个正整数n和一个实数x,如何用最少的乘法次数计算出xn.例
上述最优求幂问题相应于正整数n的最短加法链问题,即求n的一个加法链,使其长度r达到最小.正整数n的最短加法链长度记为l(n).
算法设计:对于给定的正整数n,计算相应于正整数n的最短加法链.
数据输入:由文件input.txt给出输入数据.第1行有1个正整数n.
结果输出:将计算的最短加法链长度l(n)和相应的最短加法链输出到文件output.txt.
上述最优求幂问题相应于正整数n的最短加法链问题,即求n的一个加法链,使其长度r达到最小.正整数n的最短加法链长度记为l(n).
算法设计:对于给定的正整数n,计算相应于正整数n的最短加法链.
数据输入:由文件input.txt给出输入数据.第1行有1个正整数n.
结果输出:将计算的最短加法链长度l(n)和相应的最短加法链输出到文件output.txt.
算法设计:对于给定的n个正整数,设计一个算法,用最少的无优先级运算次数产生整数m.
数据输入:由文件input.txt给出输入数据.第1行有2个正整数n和m.第2行是给定的用于运算的n个正整数.
结果输出:将计算的产生整数m的最少无优先级运算次数以及最优无优先级运算表达式输出到文件output.txt.
对于任何开线段z,设其端点坐标为(x0,y0)和(x1,y1),则开线段z的长度定义为
算法设计:对于给定的开线段集合I和正整数k.计算开线段集合I的最长k可重线段集的长度.
数据输入:由文件input.txt提供输入数据.文件的第1行有2个正整数n和k,分别表示开线段的个数和开线段的可重叠数.接下来的n行,每行有4个整数,表示开线段的2个端点坐标.
结果输出:将计算的最长k可重线段集的长度输出到文件output.txt.
(1)汽车只能沿网格边行驶,装满油后能行驶K条网格边.出发时汽车已装满油,在起点与终点处不设油库.
(2)当汽车行驶经过一条网格边时,若其x坐标或Y坐标减小,则应付费用B,否则免付费用.
(3)汽车在行驶过程中遇油库则应加满油并付加油费用A.
(4)在需要时可在网格点处增设油库,并付增设油库费用C(不含加油费用A).
(5)(1)~(4)中的各数N、K、A、B、C均为正整数.
算法设计:求汽车从起点出发到达终点的一条所付费用最少的行驶路线.
数据输入:由文件input.txt提供输入数据.文件的第1行是N、K、A、B、C的值,2≤N≤100,2≤K≤10.第2行起是一个N×N的0-1方阵,每行N个值,至N+1行结束.方阵的第1行第j列处的值为1表示在网格交叉点(i,j)处设置了一个油库,为0时表示未设油库,各行相邻的2个数以空格分隔.
结果输出:将找到的最优行驶路线所需的费用即最小费用输出到文件output.txt.文件的第1行中的数是最小费用值.
①汽车只能沿网格边行驶,装满油后能行驶K条网格边.出发时汽车已装满油,任起点与终点处不设油库.
②汽车经过一条网格边时,若其X坐标或Y坐标减小,则应付费用B,否则免付费用.
③汽车在行驶过程中遇油库,应加满油并付加油费用A.
④在需要时用在网格点处增设油库,并付增设油库费用C(不含加油费用A).
⑤①~④中的各数N、K、A、B、C均为正整数,且满足约束:2≤N≤100,2≤K≤10.
设计一个算法,求出汽车从起点出发到达终点的一条所付费用最少的行驶路线.
算法设计:对于给定的交通网格,计算汽车从起点出发到达终点的一条所付费用最少的行驶路线.
数据输入:由文件input.txt提供输入数据.文件的第1行是N、K、A、BC的值.第2行起是一个N×N的0-1方阵,每行N个值,至N+1行结束.方阵的第i行第j列处的值为1表示在网格交叉点(,j)处设置了一个油库,为0时表示未设油库.各行相邻两个数以空格分隔.结果输出:将最小费用输出到文件output.txt.
算法设计:给定平面上n个点,计算这n个点的最短双调TSP回路.
数据输入:由文件input.txt给出输入数据.第1行有1个正整数n,表示给定的平面上的点数.在接下来的n行中,每行2个实数,分别表示点的x坐标和y坐标.
结果输出:将计算的最短双调TSP回路的长度(保留2位小数)输出到文件output.txt.
算法设计:设计一个算法,找出给定序列x和y的包含s为其子串的最长公共子序列.
数据输入:由文件input.txt提供输入数据.文件的第1行中给出正整数,分别表示给定序列x、y和约束字符串s的长度.接下来的3行分别给出序列x、y和约束字符串s.
结果输出:将计算出的x和y的包含s为其子串的最长公共子序列的长度输出到文件output.txt中.
算法设计:设计一个算法,找出给定序列x和y的不含为其子串的最长公共子序列.
数据输入:重文件input.txt提供输入数据.文件的第1行中给出正整数d,表示约束字符串个数.接下来的2行分别给出序列x和y.最后d行的每行给出一个约束字符串.
结果输出:将计算出的x和y的不含为其子串的最长公共子序列输出到文件output.txt中.文件的第1行输出最长公共子序列.第2行输出最长公共子序列的长度.
每个点xi都是一个客户.每个点xi到服务机构S的距离定义为.如果客户xi在S的服务覆盖范围内,即,则其服务费用为0,否则其服务费用为w(i).
服务机构S的总覆盖费用为
式中,I(j,S)的定义为
算法设计:对于给定直线L上的n个点,计算在直线L上最多设置k处服务机构的最小覆盖费用.
数据输入:由文件input.txt给出输入数据.第1行有3个正整数n、k和r.n表示直线L上有n个点;k是服务机构总数的上限;r是服务机构的覆盖半径.接下来的n行中,每行有3个整数.第i+1行的3个整数xi、wi、ci分别表示x(i)、w(i)和c(i).
结果输出:将计算的最小覆盖费用输出到文件output.txt.
为了保护您的账号安全,请在“简答题”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!