USACO Section 1.5 Number Triangles

这个不解释了吧,提交后看了下后台数据,相当的大啊。。。

 1 /* ID:linyvxi1
2 PROB:numtri
3 LANG:C++
4 */
5 #include <stdio.h>
6 #include <math.h>
7 #include <stdlib.h>
8 int max(int a,int b)
9 {
10 return a>b?a:b;
11 }
12 int num_map[1001][1001];
13 int main()
14 {
15 freopen("numtri.in","r",stdin);
16 freopen("numtri.out","w",stdout);
17 int R;
18 scanf("%d",&R);
19 int i,j;
20 for(i=1;i<=R;i++){
21 for(j=1;j<=i;j++){
22 scanf("%d",&num_map[i][j]);
23 }
24 }
25 int max_sum=0;
26 for(i=1;i<=R;i++){
27 for(j=1;j<=i;j++){
28 if(i==1){
29 ;
30 }else if(j==1){
31 num_map[i][j]+=num_map[i-1][j];
32 }else if(j==i){
33 num_map[i][j]+=num_map[i-1][j-1];
34 }else{
35 num_map[i][j]+=max(num_map[i-1][j-1],num_map[i-1][j]);
36 }
37 if(num_map[i][j]>max_sum)
38 max_sum=num_map[i][j];
39 }
40 }
41 printf("%d\n",max_sum);
42 }



原文地址:https://www.cnblogs.com/yangce/p/2343263.html