数字三角形【IOI 1994】
来源:互联网 发布:python适合做什么开发 编辑:程序博客网 时间:2024/05/05 14:17
分析:DP的基础题
没经过优化的初始代码
#include <cstdio>
#include <iostream>
#include <cstring>
using namespace std;
const int maxn=105;
int a[maxn][maxn],f[maxn][maxn];
int main()
{
int n,m;
scanf("%d",&n);
for (int i=1;i<=n;i++)
for (int j=1;j<=i;j++)
scanf("%d",&a[i][j]);
memset(f,0,sizeof(f));
f[1][1]=a[1][1];
for (int i=2;i<=n;i++)
for (int j=1;j<=i;j++)
f[i][j]=max(f[i-1][j],f[i-1][j-1])+a[i][j];
int sum=0;
for (int i=1;i<=n;i++)
for (int j=1;j<=i;j++)
sum=max(sum,f[i][j]);
printf("%d",sum);
return 0;
}
#include <iostream>
#include <cstring>
using namespace std;
const int maxn=105;
int a[maxn][maxn],f[maxn][maxn];
int main()
{
int n,m;
scanf("%d",&n);
for (int i=1;i<=n;i++)
for (int j=1;j<=i;j++)
scanf("%d",&a[i][j]);
memset(f,0,sizeof(f));
f[1][1]=a[1][1];
for (int i=2;i<=n;i++)
for (int j=1;j<=i;j++)
f[i][j]=max(f[i-1][j],f[i-1][j-1])+a[i][j];
int sum=0;
for (int i=1;i<=n;i++)
for (int j=1;j<=i;j++)
sum=max(sum,f[i][j]);
printf("%d",sum);
return 0;
}
稍微优化之后的代码
#include <iostream>
#include <algorithm>
const int maxn=101;
using namespace std;
int main()
{
int n, a[maxn][maxn];
cin >> n;
for (int i = 1; i <= n; i++)
for (int j = 1; j <= i; j++)
cin >> a[i][j];
for (int i = n-1; i >= 1 ; i--)
for (int j = 1; j <= i; j++)
a[n][j] = max(a[n][j], a[n][j+1]) + a[i][j];
cout << a[n][1];
}
#include <algorithm>
const int maxn=101;
using namespace std;
int main()
{
int n, a[maxn][maxn];
cin >> n;
for (int i = 1; i <= n; i++)
for (int j = 1; j <= i; j++)
cin >> a[i][j];
for (int i = n-1; i >= 1 ; i--)
for (int j = 1; j <= i; j++)
a[n][j] = max(a[n][j], a[n][j+1]) + a[i][j];
cout << a[n][1];
}
0 0
- 数字三角形【IOI 1994】
- IOI 1994 USACO 1.5 数字三角形 Number Triangles
- 1994 IOI 简单dp
- IOI 1994 169:The Buses
- 数字三角形!
- 数字三角形
- 数字三角形
- 数字三角形
- 数字三角形
- 数字三角形
- 数字三角形
- 数字三角形
- 数字三角形
- 数字三角形
- 数字三角形
- 数字三角形
- 数字三角形
- 数字三角形
- 解决This function or variable may be unsafe
- 安卓学习记录-java-day2
- centos 下安装vitrualbox
- windows系统XAMPP的安装配置使用
- 硬盘、文件系统和存储 block、sector、 Stripe size区别
- 数字三角形【IOI 1994】
- x86-64栈帧布局分布
- 【jQuery】学习总结
- 两个遁环调度Mysql存储过程的SP代码
- 面试复习必备之:IO流
- XAMPP Apache 无法启动原因及解决方法
- ICE Java语言开发入门教程
- 跑在成功的路上......
- 动态链接库的显示加载和隐式加载的区别