HDU 1661 Assigments 贪心法题解
来源:互联网 发布:软件性能指标有哪些 编辑:程序博客网 时间:2024/05/17 21:04
Problem Description
In a factory, there are N workers to finish two types of tasks (A and B). Each type has N tasks. Each task of type A needs xi time to finish, and each task of type B needs yj time to finish, now, you, as the boss of the factory, need to make an assignment, which makes sure that every worker could get two tasks, one in type A and one in type B, and, what's more, every worker should have task to work with and every task has to be assigned. However, you need to pay extra money to workers who work over the standard working hours, according to the company's rule. The calculation method is described as follow: if someone’ working hour t is more than the standard working hour T, you should pay t-T to him. As a thrifty boss, you want know the minimum total of overtime pay.
Input
There are multiple test cases, in each test case there are 3 lines. First line there are two positive Integers, N (N<=1000) and T (T<=1000), indicating N workers, N task-A and N task-B, standard working hour T. Each of the next two lines has N positive Integers; the first line indicates the needed time for task A1, A2…An (Ai<=1000), and the second line is for B1, B2…Bn (Bi<=1000).
Output
For each test case output the minimum Overtime wages by an integer in one line.
Sample Input
2 54 23 5
Sample Output
4
贪心思想:
1 先计算完成任务A的每个员工剩下多少时间
2 剩下时间越多的,就分配B任务时间越多
排序匹配,就很好计算了。
#include <cstdio>#include <algorithm>using namespace std;int A[1001];int B[1001];int main(){int N, T;while (~scanf("%d %d", &N, &T)){for (int i = 0; i < N; i++){scanf("%d", &A[i]);A[i] = T - A[i];}for (int i = 0; i < N; i++){scanf("%d", &B[i]);}sort(A, A+N);sort(B, B+N);int ans = 0;for (int i = N-1; i >= 0; i--){A[i] = B[i] - A[i];if (A[i] > 0) ans += A[i];}printf("%d\n", ans);}return 0;}
1 0
- HDU 1661 Assigments 贪心法题解
- 贪心:HDU - 2037 题解
- 贪心 HDU 2037题解
- HDU贪心题解
- 贪心2 HDU - 1050 题解
- 贪心5 HDU - 1789 题解
- HDU 1051 Wooden Sticks 贪心题解
- HDU 1051题解分析---------贪心算法
- C - 贪心3 HDU - 1051 题解
- 7_4_E题 Edit distance题解 [hdu 2895] (贪心)
- 7_4_F题 Task 题解[hdu 4846](贪心)
- hdu 1789( 贪心法)
- sequence题解(贪心)
- ☆HDU 5976 Detachment 详细题解(贪心+逆元+前缀和,积)
- HDU 贪心
- 【贪心】hdu
- dlut1224题解-贪心及注意事项
- 【BZOJ】【P2697】【特技飞行】【题解】【贪心】
- 主函数中的局部变量定义时容易出现的问题
- centos6 can't mount ntfs
- arp病毒系列——攻击类型
- leetcode:Word Ladder
- linux下特殊的进程号
- HDU 1661 Assigments 贪心法题解
- [Unity3D]脚本中Start()和Awake()的区别
- 计算机学院研发------考核之界面
- (CronJob)命令行直接调用CodeIgniter中/controller/action
- 无向图的割顶与桥
- Mac下套件管理器——Homebrew
- 期末前的彷徨
- 黑马程序员——内存管理
- [Leetcode]Gray_code