JZOJ 【NOIP2011DAY2】聪明的质监员

来源:互联网 发布:什么是电子商务数据库 编辑:程序博客网 时间:2024/05/22 06:34

题目

Description

小 T 是一名质量监督员,最近负责检验一批矿产的质量。这批矿产共有n 个矿石,从1到n 逐一编号,每个矿石都有自己的重量wi 以及价值vi。检验矿产的流程是:
1、给定m 个区间[Li,Ri];
2、选出一个参数W;
3、对于一个区间[Li,Ri],计算矿石在这个区间上的检验值Yi :这个区间上所有重量大于等于W的矿石数目与它们的价值和的乘积。这批矿产的检验结果Y 为各个区间的检验值之和。若这批矿产的检验结果与所给标准值S 相差太多,就需要再去检验另一批矿产。小T不想费时间去检验另一批矿产,所以他想通过调整参数W 的值,让检验结果尽可能的靠近标准值S,即使得S-Y 的绝对值最小。请你帮忙求出这个最小值。

Input

第一行包含三个整数 n,m,S,分别表示矿石的个数、区间的个数和标准值。
接下来的 n 行,每行2 个整数,中间用空格隔开,第i+1 行表示i 号矿石的重量wi 和价
值vi 。
接下来的 m 行,表示区间,每行2 个整数,中间用空格隔开,第i+n+1 行表示区间[Li,
Ri]的两个端点Li 和Ri。注意:不同区间可能重合或相互重叠。

Output

输出只有一行,包含一个整数,表示所求的最小值。

Sample Input

5 3 15 1 5 2 5 3 5 4 5 5 5 1 5 2 4 3 3

Sample Output

10

思路:

不难fa♂现,w变大,y变小,且区间满足单调递增,所以我们可以用二分找到w的值。

代码:

#include<cstdio>#include<iostream>#include<algorithm>#include<cstring>using namespace std;const int N=200005;int n,m;long long stone;int w[N],v[N],st[N],ed[N];long long a[N],b[N];long long calc(long long x){    for(int i=1;i<=n;i++)     {        a[i]=a[i-1];        b[i]=b[i-1];        if(w[i]>=x)         {            a[i]++;            b[i]=b[i]+v[i];        }    }    long long s=0;    for(int i=1;i<=m;i++) s=s+(a[ed[i]]-a[st[i]-1])*(b[ed[i]]-b[st[i]-1]);    return s;}   long long erfen1(long long l,long long r){    if(l>r) return r;    long long mid=(l+r)/2;    long long s=calc(mid);    if(s>=stone) return erfen1(mid+1,r); else return erfen1(l,mid-1);}long long ABS(long long x){    if(x<0) return -x;else return x;}int main(){    cin>>n>>m>>stone;    for(int i=1;i<=n;i++) scanf("%d%d",&w[i],&v[i]);    for(int i=1;i<=m;i++) scanf("%d%d",&st[i],&ed[i]);    long long q=erfen1(0,1e8);    cout<<min(ABS(calc(q)-stone),ABS(calc(q+1)-stone));    return 0;}
阅读全文
'); })();
0 0
原创粉丝点击
热门IT博客
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 假金线莲图片 野生金线兰多少钱一斤 金线莲炖汤 金线莲种子图片 金线兰功效和作用 草药金线莲图片 金线连的功效有那些作用 金线草多少钱一斤 宽体金线蛭 金线番红花 金线草的功效与作用 金线蛭 金线风多少钱一斤 金线吊葫芦的功效 野生金线连 接发金线 金线风 南金线 金线蛇 金线连茶 金线绣线菊 天机金线 金线连功效 分金线 印茄木金线 金线墨龟 金线瓷砖 金线连图片 金钱莲 钛金线条 苦恨年年压金线 金缮 女大二金满罐什么意思 佣兵冈布奥一定要买10个金罐 金美 金美太油烟机 金羚排气扇 金羚电器 金羚洗衣机7公斤 金羚洗衣机电路板 金羚滚筒洗衣机