2013年9月1日

UVa 11389 - The Bus Driver Problem

#include <cstdio>
#include <vector>
#include <algorithm>
#define PB push_back
using namespace std;
 
int main() {
  int n, d, r;
  while (scanf("%d%d%d", &n, &d, &r) && n) {
    vector<int> len[2];
    for (int i = 0; i < 2; i++) {
      for (int j = 0; j < n; j++) {
        int l;
        scanf("%d", &l);
        len[i].PB(l);
      }
      sort(len[i].begin(), len[i].end());
    }
    int ans = 0;
    for (int i = 0; i < len[0].size(); i++) {
      int price = (len[0][i] + len[1][n - i - 1] - d) * r;
      ans += price < 0 ? 0 : price;
    }
    printf("%d\n", ans);
  }
  return 0;
}

沒有留言:

張貼留言