(Java实现) 工作分配问题
工作分配问题
时间限制: 1 Sec 内存限制: 128 MB
[提交][状态][讨论版]
题目描述
设有n件工作分配给n个人。为第i个人分配工作j所需的费用为c[i][j] 。试设计一个算法,计算最佳工作分配方案,为每一个人都分配1 件不同的工作,并使总费用达到最小。
输入
第一行一个正整数n(1<=n<=20),接下来的n 行,每行n 个数,表示工作费用 。
输出
输出有m行,每行输出最小总费用。
样例输入
5
50 43 1 58 60
87 22 5 62 71
62 98 97 27 38
56 57 96 73 71
92 36 43 27 95
样例输出
144
import java.util.Scanner;
public class gongzuofenpeiwenti {
public static int sum = 0,n;
public static int [] [] num ;
public static boolean []bool;
public static int min = Integer.MAX_VALUE;
public static void main(String[] args) {
Scanner sc =new Scanner(System.in);
n = sc.nextInt();
num = new int [n+1][n+1];
bool = new boolean [n+1];
for (int i = 1;
i <=n;
i++) {
for (int j = 1;
j <=n;
j++) {
num[i][j]=sc.nextInt();
}
}
f(1);
System.out.println(min);
}
public static void f(int a){
if(a==n+1){
if(sum
推荐阅读
- JAVA(抽象类与接口的区别&重载与重写&内存泄漏)
- 7.9号工作总结~司硕
- 关于QueryWrapper|关于QueryWrapper,实现MybatisPlus多表关联查询方式
- MybatisPlus使用queryWrapper如何实现复杂查询
- python学习之|python学习之 实现QQ自动发送消息
- 事件代理
- 高天天工作室|溧清的剧本4
- 孩子不是实现父母欲望的工具——林哈夫
- opencv|opencv C++模板匹配的简单实现
- Java|Java OpenCV图像处理之SIFT角点检测详解