1.5.1 Number Triangles

  1. /*
  2. ID: awsd1231
  3. PROG: numtri
  4. LANG: C++
  5. */
  6. #include<iostream>
  7. #include<cstdio>
  8. using namespace std;
  9. int a[1001], b[1001];
  10. int* x = a, *y = b, *t;
  11. int n;
  12. int ans(int* x, int n) {
  13. int maxAns = x[0];
  14. for(int i = 0; i != n; ++i) {
  15. if(x[i] > maxAns) maxAns = x[i];
  16. }
  17. return maxAns;
  18. }
  19. int main() {
  20. freopen("numtri.in", "r", stdin);
  21. freopen("numtri.out", "w", stdout);
  22. cin >> n;
  23. cin >> x[0];
  24. for(int i = 1; i != n; ++i) {
  25. for(int j = 0; j != i + 1; ++j) {
  26. cin >> y[j];
  27. if(!j) y[j] = y[j] + x[j];
  28. else y[j] += max(x[j], x[j-1]);
  29. }
  30. t = x; x = y; y = t;
  31. }
  32. cout << ans(x, n) << endl;
  33. return 0;
  34. }

来自为知笔记(Wiz)

时间: 2024-10-12 09:12:18

1.5.1 Number Triangles的相关文章

1.5.1 Number Triangles 数字金字塔

★1.5.1 Number Triangles 数字金字塔 一.题目描述 考虑在下面被显示的数字金字塔. 写一个程序来计算从最高点开始在底部任意处结束的路径经过数字的和的最大. 每一步可以走到左下方的点也可以到达右下方的点. 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 在上面的样例中,从7 到 3 到 8 到 7 到 5 的路径产生了最大和:30 PROGRAM NAME: numtri 18 INPUT FORMAT 第一个行包含 R(1<= R<=1000) ,表示行的数目

洛谷P1216 [USACO1.5]数字三角形 Number Triangles

P1216 [USACO1.5]数字三角形 Number Triangles 题目描述 观察下面的数字金字塔. 写一个程序来查找从最高点到底部任意处结束的路径,使路径经过数字的和最大.每一步可以走到左下方的点也可以到达右下方的点. 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 在上面的样例中,从7 到 3 到 8 到 7 到 5 的路径产生了最大 输入输出格式 输入格式: 第一个行包含 R(1<= R<=1000) ,表示行的数目. 后面每行为这个数字金字塔特定行包含的整数. 所

USACO 1.5 Number Triangles

Number Triangles Consider the number triangle shown below. Write a program that calculates the highest sum of numbers that can be passed on a route that starts at the top and ends somewhere on the base. Each step can go either diagonally down to the

USACO Section1.5 Number Triangles 解题报告

numtri解题报告 —— icedream61 博客园(转载请注明出处)------------------------------------------------------------------------------------------------------------------------------------------------[题目] 有一个数字的金字塔,形状如下    7   3 8  8 1 0 2 7 4 4 4 5 2 6 5 要从顶端开始走,每次只能向

洛谷 P1216 [USACO1.5]数字三角形 Number Triangles(水题日常)

题目描述 观察下面的数字金字塔. 写一个程序来查找从最高点到底部任意处结束的路径,使路径经过数字的和最大.每一步可以走到左下方的点也可以到达右下方的点. 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 在上面的样例中,从7 到 3 到 8 到 7 到 5 的路径产生了最大 输入输出格式 输入格式: 第一个行包含 R(1<= R<=1000) ,表示行的数目. 后面每行为这个数字金字塔特定行包含的整数. 所有的被供应的整数是非负的且不大于100. 输出格式: 单独的一行,包含那个可能

usaco Number Triangles

数字三角形,最简单的dp之一. 不过这次尝试了下滚动数组. /* ID: modengd1 PROG: numtri LANG: C++ */ #include <iostream> #include <stdio.h> #include <memory.h> using namespace std; int dp[2][1000],input[1001]; int main() { freopen("numtri.in","r"

洛谷 P1216 [USACO1.5]数字三角形 Number Triangles

题目描述 观察下面的数字金字塔. 写一个程序来查找从最高点到底部任意处结束的路径,使路径经过数字的和最大.每一步可以走到左下方的点也可以到达右下方的点. 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 在上面的样例中,从7 到 3 到 8 到 7 到 5 的路径产生了最大 输入输出格式 输入格式: 第一个行包含 R(1<= R<=1000) ,表示行的数目. 后面每行为这个数字金字塔特定行包含的整数. 所有的被供应的整数是非负的且不大于100. 输出格式: 单独的一行,包含那个可能

USACO training course Number Triangles 数塔 /// DP oj10122

题目大意: ...就是数塔       7         3   8      8   1   0     2   7   4   4 4   5   2   6   5 7+3+8+7+5=30 Sample Input 573 88 1 02 7 4 44 5 2 6 5 212 3 Sample Output 304 DP水题 记录一下 自下往上走 左右始终选择较大的与之上的相加 #include<iostream> #include<algorithm> #include

[USACO1.5]数字三角形 Number Triangles

题目描述 观察下面的数字金字塔. 写一个程序来查找从最高点到底部任意处结束的路径,使路径经过数字的和最大.每一步可以走到左下方的点也可以到达右下方的点. 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 在上面的样例中,从7 到 3 到 8 到 7 到 5 的路径产生了最大 输入输出格式 输入格式: 第一个行包含 R(1<= R<=1000) ,表示行的数目. 后面每行为这个数字金字塔特定行包含的整数. 所有的被供应的整数是非负的且不大于100. 输出格式: 单独的一行,包含那个可能