差分bzoj 1676 [Usaco2005 Feb]Feed Accounting 饲料计算

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了差分bzoj 1676 [Usaco2005 Feb]Feed Accounting 饲料计算相关的知识,希望对你有一定的参考价值。

题目的建模意思是什么呢?

每个奶牛从a点开始吃,从b+1点就停止吃。这就是间接告诉你这两点组成一个区间,需要差分序列。

之后对差分的序列求前缀和(计算每天的粮草的消耗量),

之后对于消耗的粮草,我们倒着从第D天往第1天加和,如果刚好相符就输出。

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

int n,d,Start,End;
int Sum[2333];
int x,y;

int main(){
    scanf("%d%d%d%d",&n,&Start,&End,&d);
    int Aim = Start - End;
    for(int i=1;i<=n;i++){
        scanf("%d%d",&x,&y);
        Sum[x]++;
        Sum[y+1]--;
    }
    for(int i=1;i<=d;i++){
        Sum[i]+=Sum[i-1];
        //printf("Sum[%d]:%d\n",i,Sum[i]);
    }
    int ans = 0;
    for(int i=d;i>=1;i--){
        ans+=Sum[i];
        if(ans>=Aim){
            printf("%d\n",i);
            return 0;
        }
    }
}

 

以上是关于差分bzoj 1676 [Usaco2005 Feb]Feed Accounting 饲料计算的主要内容,如果未能解决你的问题,请参考以下文章

BZOJ1676: [Usaco2005 Feb]Feed Accounting 饲料计算

bzoj 1731: [Usaco2005 dec]Layout 排队布局差分约束

差分BZOJ 1651 [Usaco2006 Feb]Stall Reservations 专用牛棚

差分BZOJ 1635 [Usaco2007 Jan]Tallest Cow 最高的牛

bzoj1828/Usaco2010 Marballoc 农场分配——贪心+差分+优先队列

bzoj4390: [Usaco2015 dec]Max Flow(LCA+树上差分)