网友您好, 请在下方输入框内输入要搜索的题目:
题目内容
(请给出正确答案)
指派问题的标准形式是:有 n 个人和 n 件事,已知第 i 个人做第 j 件事的费用为 Cij(i, j=1,2,...,n) , 要求确定人和事之间的一一对应的指派方案, 使完成这 n 件事的总费用最小。 ()
此题为判断题(对,错)。
参考答案
更多 “ 指派问题的标准形式是:有 n 个人和 n 件事,已知第 i 个人做第 j 件事的费用为 Cij(i, j=1,2,...,n) , 要求确定人和事之间的一一对应的指派方案, 使完成这 n 件事的总费用最小。 () 此题为判断题(对,错)。 ” 相关考题
考题
阅读以下说明和C程序,将应填入(n)处的字句写在答题纸的对应栏内。【说明】假设需要将N个任务分配给N个工人同时去完成,每个人都能承担这N个任务,但费用不同。下面的程序用回溯法计算总费用最小的一种工作分配方案,在该方案中,为每个人分配1个不同的任务。程序中,N个任务从0开始依次编号,N个工人也从0开始依次编号,主要的变量说明如下:c[i][j]:将任务i分配给工人j的费用;task[i]:值为0表示任务i未分配,值为j表示任务i分配给工人j;worker[k]:值为0表示工人k未分配任务,值为1表示工人k已分配任务;mincost:最小总费用。【C程序】#include<stdio.h>#define N 8 /*N表示任务数和工人数*/int c[N][N];unsigned int mincost=65535; /*设置min的初始值,大于可能的总费用*/int task[N],temp[N],workerIN];void Plan(int k,unsigned Int cost){ int i;if ((1)cost<mincost){mincost=cost;for (i=0;i<N;i++) temp[i]:task[i];}else{for(i=0;i<N;i++) /*分配任务k*/if (worker[i]=0(2)){worker[i]=1; task[k]=(3);Plan((4),cost+c[k][i]);(5); task[k]=0;}/*if*/}}/*Plan*/void main(){int i,j;for (i=0;i<N;i++) { /*设置每个任务由不同工人承担时的费用及全局数组的初值*/worker[i]=0;task[i]=0; temp[i]=0;for(j=0;j<N;j++)scanf ("%d",c[i][j]);}Plan (0,0); /*从任务0开始分配*/printf("\n最小费用=%d\n",mincost);for(i二0;i<N;i++)pnntf("Task%d iB assigned toWorker%d\n",i,temp[i]);}/*main*/
考题
已知有一维数组A[0...m*n-1],若要对应为m行、n列的矩阵,则下面的对应关系______可将元素A[k](0≤k<m*n)表示成矩阵的第i行、第j列的元素(0≤i<m,0≤j<n)。A.i=k/n,j=k%mB.i=k/m,j=k%mC.i=k/n,j=k%nD.i=k/m,j=k%n
考题
已知有一维数组A(0..m*n-1],若要对应为m行、n列的矩阵,则下面的对应关系(4)可将元素A[k](0≤k<m*n)表示成矩阵的第i行、第j列的元素(0≤i<m,0≤j<n)。A.i=k/n,j=k%mB.i=k/m,j=K%mC.i=k/n,j=k%nD.i=k/m,j=k%n
考题
已知有一维数组A[0,…,m×n-1],若要对应为m行、n列的矩阵,则下面的对应关系(73)可将元素A[k](0≤k<m×n)表示成矩阵的第i行、第j列的元素(0≤i<m, 0≤j<n)。A.i=k/n,j=k%mB.i=k/m,j=k%mC.i=k/n,j=k%nD.i=k/m,j=k%n
考题
已知有一维数组A[0.m×n-1],若要对应为m行n列的矩阵,则下面的对应关系(),可将元素A[k](O≤<k≤<m×n)表示成矩阵的第i行、第j列的元素(0≤i≤m,0匀≤n)。 A. i=k/n,j=k%m
B.i=k/m,j=k%m
C.i=k/n,j=k%n
D.i=k/m,j=k%n
考题
8、已知一个栈的进栈序列是1,2,3,…n,其输出序列的第一个元素是i(1≤i≤n),则第j(1≤j≤n)个出栈元素是_______。A.iB.n-iC.j-i+1D.不确定
热门标签
最新试卷