Metal Steak

Hard to eat

  C++博客 :: 首页 :: 联系 :: 聚合  :: 管理
  0 Posts :: 79 Stories :: 0 Comments :: 0 Trackbacks

公告

aaaaaaaaaaaa

常用链接

留言簿(1)

我参与的团队

搜索

  •  

最新评论

#include <iostream>
using namespace std;

int
sum[
1001][1001], ans[1001][1001], n, stone[1001];

void
__read__()
{
    cin 
>> n;
    
forint i = 1; i <= n; i++ )
        cin 
>> stone[i];
}

void
__init__()
{
    
forint j = 1; j <= n; j++ )
        
forint i = 1; i <= n - j + 1; i++ )
            sum[j][i] 
= sum[j][i - 1+ stone[i + j - 1];

}

void
__outp__()
{
    cout 
<< ans[1][n];
}

void
__dpmax__()
{
    memset( ans, 
0sizeof ans );
    
forint i = 2; i <= n; i++ )
        
forint j = 1; j <= n - i + 1; j++ )
            
forint k = 1; k < i; k++ )
                
if( ans[j][k] + ans[j + k][i - k] + sum[j][i] > ans[j][i] )
                   ans[j][i] 
= ans[j][k] + ans[j + k][i - k] + sum[j][i];
    __outp__();
}

void
__dpmin__()
{
    memset( ans, 
0sizeof ans );
    
forint i = 2; i <= n; i++ )
        
forint j = 1; j <= n - i + 1; j++ )
        {
            ans[j][i] 
= 999999;
            
forint k = 1; k < i; k++ )
                
if(  ans[j][k] + ans[j + k][i - k] + sum[j][i] < ans[j][i] )
                    ans[j][i] 
= ans[j][k] + ans[j + k][i - k] + sum[j][i];
        }
    __outp__();
}

int
main()
{
    __read__();
    __init__();
    __dpmin__();
    cout 
<< " ";
    __dpmax__();
    cout 
<< endl;

    
return 0;
}

posted on 2009-09-15 21:04 mad4alcohol 阅读(93) 评论(0)  编辑 收藏 引用

只有注册用户登录后才能发表评论。
网站导航:   博客园   博客园最新博文   博问   管理