Chinaunix首页 | 论坛 | 博客
  • 博客访问: 293305
  • 博文数量: 69
  • 博客积分: 2946
  • 博客等级: 少校
  • 技术积分: 800
  • 用 户 组: 普通用户
  • 注册时间: 2010-04-09 04:15
文章分类

全部博文(69)

文章存档

2013年(6)

2012年(16)

2011年(18)

2010年(29)

分类: C/C++

2010-04-12 04:54:16

这个题目算法真的说不上,可能跟动态规划扯上点关系,但这个很简单。
CODE:
 

#include<iostream>
#include<cstdlib>
#define max 1000
int array[max][max];

using namespace std ;

void maxmun(int number)
{
     int temp=0 ;
     for(int i=0;i<number;i++)
     temp =temp>array[number-1][i]?temp:array[number-1][i];
     cout<<temp<<endl;
}

int twomax(int a , int b )
{
    return a>b?a:b;
}

void chan(int n )
{
  if(n==2) {
  array[1][0]=array[1][0]+array[0][0];
  array[1][1]=array[1][1]+array[0][0];
  }
  else if(n>2){
            for(int i=1;i<n-1;i++)
                array[n-1][i]=twomax(array[n-1][i]+array[n-2][i-1],array[n-1][i]+array[n-2][i]);
                array[n-1][0]=array[n-1][0]+array[n-2][0];
                array[n-1][n-1]=array[n-1][n-1]+array[n-2][n-2];
              }
}
           
int main()
{
    int number ;
    cin>>number ;
    for(int i=0;i<max;i++)
       for(int j=0;j<max;j++)
          array[i][j]= 0 ;
    for(int i=0;i<number;i++)
       for(int j=0 ;j<=i;j++)
           cin>>array[i][j];
    for(int i=1 ;i<=number;i++)
    chan(i);
    maxmun(number);
    system("pause");
    return 0 ;
}


Web Hosting
阅读(566) | 评论(0) | 转发(1) |
0

上一篇:XMU SUPERPRIME 1009

下一篇:xmu 1015.AntiCAPS

给主人留下些什么吧!~~