码迷,mamicode.com
首页 > 其他好文 > 详细

百度之星 初赛B

时间:2017-03-21 22:43:32      阅读:171      评论:0      收藏:0      [点我收藏+]

标签:src   names   .com   lin   lap   define   math   img   view   

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

标签:src   names   .com   lin   lap   define   math   img   view   

原文地址:http://www.cnblogs.com/cherryMJY/p/6596821.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!