比赛 |
noi pro 模拟赛 |
评测结果 |
AAAAAAAAAAAAAAAAAAAA |
题目名称 |
AAAC(无题面) |
最终得分 |
100 |
用户昵称 |
胡嘉兴 |
运行时间 |
4.282 s |
代码语言 |
C++ |
内存使用 |
1.84 MiB |
提交时间 |
2018-10-26 20:59:16 |
显示代码纯文本
#include<bits/stdc++.h>
#define ll long long
#define lowbit(x) (x&-x)
using namespace std;
const int N = 1e5+7;
ll sum[N];
int s[N], p[N];
int main()
{
int n, m;
freopen("AAAC.in", "r", stdin);
freopen("AAAC.out", "w", stdout);
scanf("%d%d", &n, &m);
for(int i = 1; i <= n; i++)
{
scanf("%d%d", &s[i], &p[i]);
sum[i] = (ll)s[i]*p[i];
}
for(int i = n; i >= 2; i--)
{
sum[i-1] = min(sum[i-1], sum[i]);
}
while(m--)
{
int q, pos;
scanf("%d", &q);
if(q>=s[n])
{
printf("%lld\n", (ll)q*p[n]);
continue;
}
pos = upper_bound(s+1, s+1+n, q)-s;
printf("%lld\n", min((ll)q*p[pos-1], sum[pos]));
}
return 0;
}