问题描述:给定n个正整数和4个运算符+、-、*、/,且运算符无优先级,如2+3x5=25.对于任意给定的整数
算法设计:对于给定的n个正整数,设计一个算法,用最少的无优先级运算次数产生整数m.
数据输入:由文件input.txt给出输入数据.第1行有2个正整数n和m.第2行是给定的用于运算的n个正整数.
结果输出:将计算的产生整数m的最少无优先级运算次数以及最优无优先级运算表达式输出到文件output.txt.
算法设计:对于给定的n个正整数,设计一个算法,用最少的无优先级运算次数产生整数m.
数据输入:由文件input.txt给出输入数据.第1行有2个正整数n和m.第2行是给定的用于运算的n个正整数.
结果输出:将计算的产生整数m的最少无优先级运算次数以及最优无优先级运算表达式输出到文件output.txt.
第1题
问题描述:给定k个排好序的序列用2路合并算法将这k个序列合并成一个序列.假设采用的2路合并算法合并2个长度分别为m和n的序列需要m+n-1次比较.
试设计一个算法确定合并这个序列的最优合并顺序,使所需的总比较次数最少.
为了进行比较,还需要确定合并这个序列的最运合并顺序,使所需的总比较次数最多.
算法设计:对于给定的k个待合并序列,计算最多比较次数和最少比较次数合并方案.
数据输入:由文件input.txt给出输入数据.第1行有1个正整数k,表示有k个待合并序列.接下来的1行有k个正整数,表示k个待合并序列的长度.
结果输出:将计算的最多比较次数和最少比较次数输出到文件output.txt.
第2题
问题描述:设有n个程序{1,2,...,n}要存放在长度为1的磁带上.程序i存放在磁带上的长度是li(1≤i≤n).程序存储问题要求确定这n个程序在磁带上的一个存储方案,使得能够在磁带上存储尽可能多的程序.
算法设计:对于给定的n个程序存放在磁带上的长度,计算磁带上最多可以存储的程序数.
数据输入:由文件input.txt给出输入数据.第1行是2个正整数,分别表示文件个数n和磁带的长度L.接下来的1行中,有1个正整数,表示程序存放在磁带上的长度.
结果输出:将计算的最多可以存储的程序数输出到文件output.txt.
第3题
的最小值称为数据包序列的均衡负载量.
算法设计:对于给定的数据包序列,计算m个处理器的均衡负载量.
数据输入:由文件input.txt给出输入数据.第1行有2个正整数n和m.n表示数据包个数,m表示处理器数.接下来的1行中有n个整数,表示n个数据包的大小.
结果输出:将计算的处理器均衡负载量输出到文件output,txt,且保留2位小数.
第4题
问题描述:大于1的正整数n可以分解为例如,当n=12时,有8种不同的分解式:
算法设计:对于给定的正整数n,计算n共有多少种不同的分解式.
数据输入:由文件input.txt给出输入数据.第1行有1个正整数n
结果输出:将计算出的不同的分解式数输出到文件output.txt.
第5题
规则I:每次只能移动1个圆盘:
规则II:任何时刻都不允许将较大的圆盘压在较小的圆盘之上;
规则III:任何时刻都不允许将同色圆盘叠放在一起:
规则IV:在满足移动规则I~III的前提下,可将圆盘移至A、B、C中任一塔座上.
试设计一个算法,用最少的移动次数将塔座A上的n个圆盘移到塔座B上,并仍按同样顺序叠置.
算法设计:对于给定的正整数n,计算最优移动方案.
数据输入:由文件input.txt给出输入数据.第1行是给定的正整数no.
结果输出:将计算出的最优移动方案输出到文件output.txt.文件的每行由一个正整数k
和2个字符c1和c2组成,表示将第k个圆盘从塔座c1移到塔座c2上.
第6题
算法设计:对于给定的n和k个加油站位置,计算最少加油次数.
数据输入:由文件input.tst给出输入数据.第1行有2个正整数n和k,表示汽车加满油后可行驶nkm,且旅途中有k个加油站.接下来的1行中有k+1个整数,表示第k个加油站与第k-1个加油站之间的距离.第0个加油站表示出发地,汽车已加满油.第k+1个加油站表示目的地.
结果输出:将计算的最少加油次数输出到文件output.txt.如果无法到达目的地,则输出“NoSolution",
第7题
算法设计:对于给定的k个待安排的活动,计算使用最少会场的时间表.
数据输入:由文件input.txt给出输入数据.第1行有1个正整数k,表示有k个待安排的活动.接下来的k行中,每行有2个正整数,分别表示k个待安排的活动的开始时间和结束时间.时间以0点开始的分钟计.
结果输出:将计算的最少会场数输出到文件output.txt.
第8题
问题描述:给定一条有向直线L及L上的n+1个点.有向直线L上的每个点x都有权值w(xi),每条有向边都有一个非负边长.有向直线L上的每个点x可以看作客户,其服务需求量为w(xi)e每条边的边长可以看作运输费用.如果在点xi处未设置服务机构,则将点xi处的服务需求沿有向边转移到点xj处服务机构需付出的服务转移费用为.在点x0处已设置了服务机构,现在要在直线L上增设2处服务机构,使得整体服务转移费用最小.
算法设计:对于给定的有向直线L,计算在直线L上增设2处服务机构的最小服务转移费用.
数据输入:由文件input.txt给出输入数据.第1行有1个正整数m,表示有向直线L上除了点x0还有n个点接下来的n行中,每行有2个整数.第i+1行的2个整数分别表示和.
结果输出:将计算的最小服务转移费用输出到文件output.txt.
第9题
问题描述:机器人Rob在一个有n×n个方格的方形区域F中收集样本.(i,j)方格中样本的价值为v(i,j),如图3-6所示.Rob从方形区域F的左上角A点出发,向下或向右行走,
直到右下角的B点,在走过的路上,收集方格中的样本.Rob从A点到B点共走2次,试找出Rob的2条行走路径,使其取得的样本总价值最大.
算法设计:给定方形区域F中的样本分布,计算Rob的2条行走路径,使其取得的样本总价值最大.
数据输入:由文件input.xt给出输入数据.第1行有1个正整数n,表示方形区域F有n×n个方格.按下来每行有3个整数,前2个数表示方格位置,第3个数为该位置样本价值.最后一行是3个0.
结果输出:将计算的最大样本总价值输出到文件output.txt.
第10题
算法设计:给定正整数n,计算Tab(n)中2xn的标准二维表的个数.
数据输入:由文件input.txt给出输入数据.第1行有1个正整数n.
结果输出:将计算出的Tab(n)中2xn的标准:二维表的个数输出到文件output.txt.
第11题
算法设计:对于给定的偶数m,n≥6,且|m-n|≤2,计算m×n的国际象棋棋盘上马的一条Hamilton周游路线.
数据输入:由文件input.txt给出输入数据.第1行有两个正整数m和n,表示给定的国际象棋棋盘山m行,每行n个格子组成.
结果输出:将计算出的马的,Hamilton周游路线用下面的两种表达方式输出到文件output.txt.
第1种表达方式按照马步的次序给出马的Hamilton周游路线.马的每一步用所在的方格坐标(x,y)来表示.x表示行坐标,编号为0,1,...,m-1;y表示列坐标,编号为0,1...,n-1.起始方格为(0,0).
第2种表达方式在棋盘的方格中标明马到达该方格的步数.(0,0)方格为起跳步,并标明为第1步.