3_7.cpp

来自「数字三角形问题」· C++ 代码 · 共 46 行

CPP
46
字号
#include"stdio.h"
void main()
{
	int i,j,n,a[100][100];
	int M(int n,int a[100][100]);
	FILE *fp1,*fp2;
	if((fp1=fopen("input.txt","r"))==NULL)
	{
		printf("file cannot be opened\n");
		//exit(1);
	}
	fscanf(fp1,"%d",&n);
	for(i=0;i<n;i++)
		for(j=0;j<=i;j++)
			fscanf(fp1,"%d",&a[i][j]);
	if((fp2=fopen("output.txt","w"))==NULL)
	{
		printf("file cannot be opened\n");
		//exit(1);
	}
	fprintf(fp2,"%d\n",M(n,a));

}
int M(int n,int a[100][100])
{   
	int i,j;
	int m[100][100];
	int MAX(int a,int b);
	for(i=n-1;i>=0;i--)
        for(j=0;j<=i;j++)
		{
			if(i==n-1)
				m[i][j]=a[i][j];
			else
				m[i][j]=MAX(m[i+1][j]+a[i][j],m[i+1][j+1]+a[i][j]);
		}
		return m[0][0];
}
int MAX(int a,int b)
{
	if(a>=b)
		return a;
	else
		return b;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?