[计蒜客(蓝桥杯省赛)]捡水果 原创
题目来源 计蒜客程序设计竞赛基础课(蓝桥杯省赛)
算法标签 DP
题目描述
思路
取消前导零看成样例输入比较方便。
不需要考虑边界,因为即使越界,也是考虑Max(n,m)必然取得是有效值
上山比下山少一次循环判断。
题目代码
下山做法
#include<iostream>
using namespace std;
const int N = 1010;
int a[N][N]={0};
int Max(int a,int b){return a>b?a:b;}
int main()
{
int n;
cin>>n;
for(int i=0;i<n;i++)
for(int j=0;j<=i;j++)cin>>a[i][j];
for(int i=0;i<n;i++)
for(int j=0;j<=i;j++)a[i][j]+=Max(a[i-1][j-1],a[i-1][j]);
int t=0;
for(int i=0;i<n;i++)
t=Max(t,a[n-1][i]);
cout<<t;
return 0;
}
上山做法
#include<iostream>
using namespace std;
const int N = 1010;
int a[N][N]={0};
int Max(int a,int b){return a>b?a:b;}
int main()
{
int n;
cin>>n;
for(int i=0;i<n;i++)
for(int j=0;j<=i;j++)cin>>a[i][j];
for(int i=n-2;i>=0;i--)
for(int j=0;j<=i;j++)a[i][j]+=Max(a[i+1][j+1],a[i+1][j]);
cout<<a[0][0];
return 0;
}
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人