贪心地减少司机加班费
程序员文章站
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;
}
}
下一篇: EJB3学习记录
推荐阅读