第十届蓝桥杯java B组—试题I 后缀表达式
生活随笔
收集整理的這篇文章主要介紹了
第十届蓝桥杯java B组—试题I 后缀表达式
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
文章目錄
- 1.大賽題目
- 2.文字描述
- 3.代碼實例
- 4.答案
1.大賽題目
圖片如下
2.文字描述
試題 I: 后綴表達式
【問題描述】
給定 N 個加號、M 個減號以及 N + M + 1 個整數 A1,A2,··· ,AN+M+1,
小明想知道在所有由這 N 個加號、M 個減號以及 N + M +1 個整數湊出的合法的 后綴表達式中,結果最大的是哪一個?
請你輸出這個最大的結果。 例如使用1 2 3 + -,則 “2 3 + 1 -” 這個后綴表達式結果是 4,是最大的。
【輸入格式】
第一行包含兩個整數 N 和 M。 第二行包含 N + M + 1 個整數 A1,A2,··· ,AN+M+1。
【輸出格式】
輸出一個整數,代表答案。
【樣例輸入】 1 1 1 2 3
【樣例輸出】 4
【評測用例規模與約定】
對于所有評測用例,0≤ N,M ≤100000,?109 ≤ Ai ≤109。
3.代碼實例
public class LanqiaotenthI {public static void main (String args[]) {Scanner scanner = new Scanner(System.in);int N = scanner.nextInt();int M = scanner.nextInt();int sum = 0;//定義N+M+1個整數的數組int NM [] = new int [N+M+1];for (int i = 0; i < NM.length; i++) {NM[i] = scanner.nextInt();}//對輸入的N+M+1個數進行排序(升序)Arrays.sort(NM);for (int i = NM.length-1; i >= NM.length-N-1; i--) {//這路可以舉個例子自己試試sum += NM[i];}for (int i = 0; i < M; i++) {sum -= NM[i];}System.out.println(sum);scanner.close();} }4.答案
2 2
1 2 3 4 5
9
總結
以上是生活随笔為你收集整理的第十届蓝桥杯java B组—试题I 后缀表达式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: tomcat 终止端口号时 taskki
- 下一篇: h5中的结构元素header、nav、a