/*
京东编程题3:使用优惠券,一个商品只能能使用一张优惠券,一张优惠券可以重复使用。
输入:
3 2 //商品数n,优惠券数m
4 8 6 //价格数组a
5 1 //优惠券满减金额b
8 5 //优惠券的优惠金额c
输出:
12
*/
#include <iostream>
using namespace std;
#include<vector>
int main() {
int n, m; //商品数,优惠券数
cin >> n >> m;
vector<int> a(n), b(m), c(m);
int ans = 0;
for (int i = 0; i < n; i++) { //商品价格
cin >> a[i];
}
for (int i = 0; i < m; i++) { //优惠券满减价格,优惠价格
cin >> b[i] >> c[i];
}
for (int i = 0; i < n; i++) { //遍历商品
int minCost = a[i];
for (int j = 0; j < m; j++) { //遍历优惠券
int cost = a[i];
if (a[i] >= b[j]) {
cost = a[i] - c[j];
}
minCost = min(minCost, cost);
}
ans += minCost;
}
cout << ans << endl;
return 0;
}
// 64 位输出请用 printf("%lld")