数字三角形问题c语言,数字三角形问题 算法

  数字三角形问题c语言,数字三角形问题 算法

  给定一个由n行数字组成的数字三角形,如下图所示。尝试设计一个算法,计算一条从三角形的顶部到底部的路径,使通过该路径的数字之和最大化。

  对于一个给定的由n行数字组成的数字三角形,计算通过从三角形顶部到底部的路径的数字之和的最大值。

  输入格式:输入数据的第一行是数字三角形的个数n,1n100。接下来的n行是数字三角形每一行中的数字。所有数字都在0之间.99.

  输出格式:输出数据只有一个整数,表示计算的最大值。

  //动态编程:用一个数组记录所有已解决的子问题的答案,不考虑子问题以后是否会用到。只要它被计算过,它的结果就会存储在数组中。

  //数字三角形

  #包含stdio.h

  int main()

  {

  int n,I,j;

  scanf(%d ,

  int a[101][101];

  for(I=1;我我)

  {

  for(j=1;j j)

  {

  scanf(%d ,a[I][j]);//用二维数组存储数据

  }

  }

  int s[101][101];//存储从第I行第j个数字到底部的最佳路径上的数字之和。

  for(j=1;j j)

  {

  s[n][j]=a[n][j];

  }

  for(I=n;我我-)

  {

  for(j=1;j j)

  {

  如果(i==n)

  {

  s[I][j]=a[I][j];

  }

  其他

  {

  if(s[i 1][j]=s[i 1][j 1])

  {

  s[I][j]=s[I 1][j]a[I][j];

  }

  其他

  {

  s[I][j]=s[I 1][j 1]a[I][j];

  }

  }

  }

  }

  printf(%d\n ,s[1][1]);

  返回0;

  }

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • c语言调用退出函数 c语言退出整个程序怎么写
  • c语言中怎么给函数初始化 c语言的初始化语句
  • c语言编写函数计算平均值 c语言求平均函数
  • 详解c语言中的字符串数组是什么,详解c语言中的字符串数组结构,详解C语言中的字符串数组
  • 表达式求值c++实现,c语言实现表达式求值
  • 看懂c语言基本语法,C语言详解,C语言的基本语法详解
  • 用c语言实现快速排序算法,排序算法设计与实现快速排序C语言,C语言实现快速排序算法实例
  • 深入解析c语言中函数指针的定义与使用方法,深入解析c语言中函数指针的定义与使用情况,深入解析C语言中函数指针的定义与使用
  • 描述E-R图,E-R图举例,关于C语言中E-R图的详解
  • 折半查找法C语言,折半查找算法(算法设计题)
  • 折半查找法C语言,c语言折半法查找数据,C语言实现折半查找法(二分法)
  • 扫雷小游戏c++代码设计,c语言扫雷游戏源代码,C语言实现扫雷小游戏详细代码
  • 怎样统计程序代码行数,C语言统计行数,C#程序员统计自己的代码行数
  • 基于c语言的贪吃蛇游戏程序设计,用c语言编写贪吃蛇游戏程序,C语言实现简单的贪吃蛇游戏
  • 图的两种遍历算法,图的遍历算法代码c语言,Python算法之图的遍历
  • 留言与评论(共有 条评论)
       
    验证码: