日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

2020蓝桥杯省赛---java---B---8(数字三角形)

發(fā)布時間:2023/12/3 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 2020蓝桥杯省赛---java---B---8(数字三角形) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

題目描述

時間限制: 1.0s 內(nèi)存限制: 512.0MB 本題總分:20 分【問題描述】上圖給出了一個數(shù)字三角形。從三角形的頂部到底部有很多條不同的路徑。 對于每條路徑,把路徑上面的數(shù)加起來可以得到一個和,你的任務(wù)就是找到最 大的和。路徑上的每一步只能從一個數(shù)走到下一層和它最近的左邊的那個數(shù)或者右 邊的那個數(shù)。此外,向左下走的次數(shù)與向右下走的次數(shù)相差不能超過 1?!据斎敫袷健?輸入的第一行包含一個整數(shù) N (1 < N ≤ 100),表示三角形的行數(shù)。下面的 N 行給出數(shù)字三角形。數(shù)字三角形上的數(shù)都是 0100 之間的整數(shù)?!据敵龈袷健?輸出一個整數(shù),表示答案?!緲永斎搿?5 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5【樣例輸出】 27

思路分析

動態(tài)規(guī)劃+貪心

代碼實現(xiàn)

package TEST;import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner sc = new Scanner(System.in);int n = sc.nextInt();int[][] r = new int[n+1][n+1];for(int i=1; i<=n; ++i) {for (int j = 1; j <= i; ++j) {r[i][j] = sc.nextInt();r[i][j] += Math.max(r[i - 1][j - 1], r[i - 1][j]);}}System.out.println(n%2==1?r[n][n/2+1]:Math.max(r[n][n/2], r[n][n/2+1])); //分奇數(shù)和偶數(shù)}}

總結(jié)

以上是生活随笔為你收集整理的2020蓝桥杯省赛---java---B---8(数字三角形)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。