1 solutions

  • 0
    @ 2024-12-10 23:55:33

    C++ :

    #include<string.h>
    #include<iostream>
    using namespace std;
    
    int max(int a,int b)
    {
    	return a>b ? a:b;
    }
    int num[1000][1000],f[1000];
    
    int main(){
    	
    
    	int R;
    	int i,j;
    	scanf("%d",&R);
    	for (i=0;i<R;i++)
    		for(j=0;j<i+1;j++)
    			scanf("%d",&num[i][j]);
    
    	for (i=0;i<R;i++)
    		f[i]=num[R-1][i];
    
    	for (i=R-1-1;i>=0;i--)
    		for (j=0;j<=i;j++)
    		{
    			f[j]=max(f[j],f[j+1])+num[i][j];}
    
    cout<<f[0]<<endl;
    
    return 0;
    }
    
    • 1

    Information

    ID
    656
    Time
    1000ms
    Memory
    128MiB
    Difficulty
    (None)
    Tags
    # Submissions
    0
    Accepted
    0
    Uploaded By