1084:XX开公司<回溯>
来源:互联网 发布:免费吉他调音软件 编辑:程序博客网 时间:2024/06/05 15:54
Description
2020年,xx开了一家拥有N个员工的大公司。每天,xx都要分配N项工作给他的员工,但是,由于能力的不同,每个人对处理相同工作所需要的时间有快有慢。众所周知,xx是一个非常重视效率的人,他想知道该如何分配工作,才能使得完成所有工作的时间总和最小(每个员工只可以被分配到一个工作)。但是我们也都知道xx不是一般的懒,所以xx找到了你,请你拯救一下xx吧!
Input
有多组测试数据。(不超过50组)对于每组测试数据:第一行输入一个整数N,代表有N员工,员工编号从1到N。(1 <= N <= 10,N >= 8的数据只有3组) 接着输入一个N*N的二维矩阵task[N][N],task[i][j]指的是第i项工作如果由j号员工完成所需要的时间。(0 <= task[i][j] <= 1000)
Output
输出结果包括一个整数,代表所需要的最少时间(求和)。
610 11 12 11 9 1111 9 10 13 11 1212 10 11 10 13 99 14 9 10 10 1110 10 9 11 12 1110 7 10 10 10 8
54
#include<iostream>
#include<cstdio>using namespace std;int n,cost=0;int x[100],c[100][100];void work(int i,int count){ if(i>n&&count<cost){ cost=count; return ; } if(count<cost) for(int j=1;j<=n;j++) if(x[j]==0){ x[j]=1; work(i+1,count+c[i][j]); x[j]=0; }}int main (){ while(~scanf("%d",&n)){ for(int i=1;i<=n;i++){ for(int j=1;j<=n;j++) scanf("%d",&c[i][j]); x[i]=0; cost+=c[i][i]; } work(1,0); printf("%d\n",cost); } return 0;}
1 0
- 1084:XX开公司<回溯>
- xx公司面试总结
- xx公司android一面
- 华为外包-重庆XX公司
- XX公司信息化建设草案
- xx公司的笔试有感
- xx公司网站建设方案
- “布XX”公司面试总结
- 香港XX大陆公司客户关系管理系统
- XX公司招聘C笔试题
- [20100826]天津XX公司面试总结
- 一道XX公司程序设计大赛题
- 我于XX公司出差的所见所闻
- XX公司WAP系统聊天业务发展情况
- 三星公司的24xx系列平台简表
- 给XX公司网站做的一个模块。很丑陋。
- XX公司WAP系统聊天业务发展情况
- XX公司WAP系统聊天业务发展情况
- service builder不会自动建表/更新字段
- 三星Mega 6.3(i9200)删除kingroot
- 4.3日清明前一天
- theano logistic regression讲解
- 第5周项目1-三角形类雏形(3)
- 1084:XX开公司<回溯>
- 深度网络的框架结构
- java文件file类之一
- 数据结构 - 队列
- Android之Handler用法总结
- 码农小汪-Java Condition
- Best Grass
- 1002. A+B for Polynomials
- HBASE API