?? 樹塔.cpp
字號:
#include"iostream"
using namespace std;
void main()
{
int a[100][100];
int b[100][100]={0};
int n,i,j;
cout<<"輸入數塔層數n:";
cin>>n;cout<<endl;
for(i=0;i<n;i++)
for(j=0;j<=i;j++)
cin>>a[i][j];
cout<<"此數塔為:"<<endl;
{ for(i=0;i<n;i++)
{
for(j=0;j<=i;j++)
{
cout<<" ";
cout<<a[i][j];
}
cout<<endl;
}
}
for(i=0;i<n;i++)
b[n-1][i]=a[n-1][i];
for( i=n-2;i>=0;i--)
for( j=0;j<=n-1;j++)
{
if(b[i+1][j]>b[i+1][j+1])
b[i][j]=a[i][j]+b[i+1][j];
else
b[i][j]=a[i][j]+b[i+1][j+1];
}
cout<<"此數塔路徑的最大值:"<<b[0][0]<<endl;
cout<<"此數塔最大值的路徑為:";
j=0;
for(i=0;i<n;i++)
{
if(b[i][j]>b[i][j+1])
j=j;
else
j=j+1;
cout<<a[i][j]<<"->";
}
cout<<"和最大值"<<b[0][0]<<endl;
cout<<endl;
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -