BZOJ1657: [Usaco2006 Mar]Mooo 奶牛的歌声

一开始没看到题目就做

#include<iostream>
#include<algorithm>
#include<cstdio>
using namespace std;
typedef long long ll;
const ll maxn=50010;
ll sta[maxn],h[maxn],v[maxn],sum[maxn],f1[maxn];
int main(){
    int n,top=0;
    ll ans=0;
    scanf("%d",&n);
    for(int i=1;i<=n;++i)scanf("%lld%lld",&h[i],&v[i]);
    sta[0]=0;
    for(int i=1;i<=n;++i){
        while(top&&h[sta[top]]<h[i]){
            sum[i]+=v[sta[top]];
            top--;
        }
        sta[++top]=i;
    }
     
    sta[0]=n+1;top=0;
    for(int i=n;i>=1;--i){
        while(top&&h[sta[top]]<h[i]){
            sum[i]+=v[sta[top]];
            top--;
        }
        ans=max(ans,sum[i]);
        sta[++top]=i;
    }
    printf("%lld",ans);
    return 0;
}

,以为是所有奶牛疯狂wa。

原来是最近的一只。

猜你喜欢

转载自www.cnblogs.com/Dream-Runner/p/9402545.html