您的位置:首页 > 其它

hdu 4791 Alice's Print Service(贪心)

2015-11-14 21:03 295 查看
题目链接:hdu 4791 Alice’s Print Service

代码

#include <cstdio>
#include <cstring>
#include <algorithm>

using namespace std;
typedef long long ll;
const int maxn = 1e5 + 5;

int N, M, S[maxn], P[maxn];
ll W[maxn];

int main () {
int cas;
scanf("%d", &cas);
while (cas--) {
scanf("%d%d", &N, &M);
for (int i = 0; i < N; i++) {
scanf("%d%d", &S[i], &P[i]);
W[i] = 1LL * S[i] * P[i];
}
W
= 1e18;
for (int i = N-1; i >= 0; i--)
W[i] = min(W[i], W[i+1]);
int x, k;
while (M--) {
scanf("%d", &x);
k = upper_bound(S, S + N, x) - S - 1;
printf("%lld\n", min(1LL * P[k] * x, W[k+1]));
}
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: