欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

贪心地减少司机加班费

程序员文章站 2022-05-28 16:27:57
...

把早上的路程从小到大排序

晚上的路程从大到小排序

想加超过第一天应该有的路程那么就要加钱了

这是最省钱的方法。。

 

#include<iostream>
#include<algorithm>
using namespace std;
int a[110];
int b[110];
bool change1(int a, int b)
{
	return a<b;
}
bool change2(int a, int b)
{
	return a > b;
}
int main()
{
	int n, d, r; 
	int i = 0; 
	int sum = 0; 
	int temp;
	while (cin >> n >> d >> r)
	{
		if (n == 0 && d == 0 && r == 0)
			break;
		
		for (int i = 1; i <= n; i++)
		{
			cin >> a[i];
		}
		for (int i = 1; i <=n; i++)
		{
			cin >> b[i];
		}
		sort(a+1, a + n+1, change1);
		sort(b+1, b + n+1,change2);
		for (int j = 1; j <= n; j++)
		{
			if ((a[j] + b[j]) > d)
			{
				temp = (a[j] + b[j] - d)*r;
				sum = sum + temp;
			}
		}
		cout << sum << endl;
		sum = 0;
	}
}