百度之星 初赛B

Posted HelloWorld!--By-MJY

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了百度之星 初赛B相关的知识,希望对你有一定的参考价值。

HDU 5696

暴力      莫名的东西 

#include<stdio.h>
#include<algorithm>
#include<stdlib.h>
#include<cstring>
#include<string>
#include<cmath>
#include<vector>
#include<queue>
#include<map>
using namespace std;

#define ll   __int64
#define MAXN  100010
#define inf  1000000000

ll z[MAXN];
ll dp[MAXN];

int main()
{
    int n;
    while(scanf("%d",&n)!=EOF)
    {
        for(int i=1;i<=n;i++)
            scanf("%I64d",&z[i]);
        memset(dp,-1,sizeof(dp));

        for(int i=1;i<=n;i++)
        {
            int l,r;
            l=r=i;
            ll Min=z[i];
            dp[1]=max(dp[1],z[i]*z[i]);

            while(1)
            {
               if(l==1&&r==n)
                    break;
                if(l!=1&&(r==n||z[l-1]>z[r+1]))
                    Min=min(Min,z[--l]);
                else
                    Min=min(Min,z[++r]);
               dp[r-l+1]=max(z[i]*Min,dp[r-l+1]);

                if(z[l-1]>z[i]||z[r+1]>z[i])
                    break;
            }
        }
        for(int i=1;i<=n;i++)
            printf("%I64d\\n",dp[i]);
    }
    return 0;
}
View Code

 

以上是关于百度之星 初赛B的主要内容,如果未能解决你的问题,请参考以下文章

百度之星 初赛B

2017百度之星初赛B Chess

2018 “百度之星”程序设计大赛 - 初赛(B)

2018 “百度之星”程序设计大赛 - 初赛(B)

2018百度之星初赛B - A,D,F

百度之星初赛B轮 hdu 6114 6118 6119