惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

V
Visual Studio Blog
Microsoft Azure Blog
Microsoft Azure Blog
WordPress大学
WordPress大学
小众软件
小众软件
Last Week in AI
Last Week in AI
月光博客
月光博客
博客园 - 聂微东
Recent Announcements
Recent Announcements
A
About on SuperTechFans
博客园 - 三生石上(FineUI控件)
V
V2EX
阮一峰的网络日志
阮一峰的网络日志
博客园 - Franky
云风的 BLOG
云风的 BLOG
量子位
N
Netflix TechBlog - Medium
Hugging Face - Blog
Hugging Face - Blog
H
Hackread – Cybersecurity News, Data Breaches, AI and More
J
Java Code Geeks
博客园 - 司徒正美
S
SegmentFault 最新的问题
有赞技术团队
有赞技术团队
Google DeepMind News
Google DeepMind News
宝玉的分享
宝玉的分享

博客园 - xmx

Amazon 2面杯具 N皇后回溯 "中航文化杯" 2007 ACM/ICPC 国际大学生程序设计竞赛亚洲区域赛(南京) 一个用来练dfs的简单迷宫问题 pku 1662 还是找规律的 pku 1806 Manhattan 2025(找规律) 今天西华的比赛,啥都不说啦,相当的nice!~~~ 今天北京赛区的比赛 pku 1505 copying books(DP) 最近看的一些东西 The 2007 ACM Asia Programming Contest Changchun Site Internet Preliminary Contest nice 位运算果真是好东西,今天算是学到点啦^_^ FOJ月赛-2007年9月 pku 1850 前面一直没注意到某个不规范的情况,导致结果一直比标准的大...调了好久... 终于有算最长重复子串(数)的后缀数组啦,nice The 2007 ACM Asia Programming Contest - Nanjing Preliminary pku 3219 人家居然用几十B就过了,肯定有超强的规律,可是我自己找了个,挂了...只能老实算... dp pku 1050 N和素数P,求杨辉三角第N行中能被P整除的数的个数
一道双向dp,差点超时^_^|||
xmx · 2007-09-21 · via 博客园 - xmx

/*pku 2593   */
#include <iostream>
using namespace std;

int a[100001];
__int64 s[100001],t[100001];
int main()
{
    __int64 n,sum1,sum2,sum,p,q,i,j,k,b1,b2;
   
    while(cin>>n&&n!=0)
    {
       for(k=0;k<n;k++)
       cin>>a[k];
       sum1=a[0],sum2=a[n-1];b1=0;b2=0;sum=sum1+sum2;
       for(j=0;j<n-1;j++)
          {
             if(b1>0) b1+=a[j];
               else b1=a[j];
               if(b1>sum1)sum1=b1;
               b2=0;sum2=a[n-1];
              s[j]=sum1;
                
          }
          for(p=n-1;p>0;p--)
               {
                  if(b2>0) b2+=a[p];
                  else b2=a[p];
                  if(b2>sum2)sum2=b2;
                  t[p]=sum2;
               }
               sum=s[0]+t[1];
               for(i=1;i<=n-2;i++)
                   if(sum<s[i]+t[i+1])
                      sum=s[i]+t[i+1];
          cout<<sum<<endl;
    }
    return 0;
}