csp試題1 小明種蘋果

2021-09-27 10:03:55 字數 2160 閱讀 7537

題目描述

小明在他的果園裡種了一些蘋果樹。為了保證蘋果的品質,在種植過程中要進行若干輪疏果操作,也就是提前從樹上把不好的蘋果去掉。第一輪疏果操作開始前,小明記錄了每棵樹上蘋果的個數。每輪疏果操作時,小明都記錄了從每棵樹上去掉的蘋果個數。在最後一輪疏果操作結束後,請幫助小明統計相關的資訊。

輸入格式

從標準輸入讀入資料。

第1行包含兩個正整數n和m,分別表示蘋果樹的棵數和疏果操作的輪數。

第1+i行(1<= i <= n),每行包含m+1個整數ai0,ai1,…,aim。其中ai0為正整數,表示第一輪疏果操作開始前第i棵樹上蘋果的個數。aij(1 <= j <= m)為零或負整數,表示第j輪疏果操作時從第i棵樹上去掉的蘋果個數。如果為0,表示沒有去掉蘋果;如果為負,其絕對值為去掉的蘋果個數。

每行中相鄰兩個數之間用乙個空格分隔。

輸出格式

輸出到標準輸出。

輸出只有一行,包含三個整數t、k和p。其中,

t為最後一輪疏果操作後所有蘋果樹上剩下的蘋果總數(假設蘋果不會因為其它原因減少);

k為疏果個數(也就是疏果操作去掉的蘋果個數)最多的蘋果樹編號;

p為該蘋果樹的疏果個數。

相鄰兩個數之間用乙個空格分隔。輸入的資料保證是正確的,也就是說,每棵樹在全部疏果操作結束後剩下的蘋果個數是非負的。

樣例1

輸入:

3 3

73 -8 -6 -4

76 -5 -10 -8

80 -6 -15 0

輸出:

167 2 23
樣例解釋:

第1棵蘋果樹的疏果個數為8+6+4 = 18, 第2棵為5+10+8 = 23,第3棵為6+15+0 = 21,因此最後一輪疏果操作後全部蘋果樹上的蘋果個數總和為(73 -18)+ (76 - 23)+ (80 - 21)= 167,疏果個數最多的是第2棵樹,其疏果個數為23。

樣例2

輸入:

2 2

10 -3 -1

15 -4 0

輸出:

17 1 4
樣例解釋:

兩棵樹的疏果個數均為4,應輸出編號最小的第1棵數。

子任務

|aij|<= 106,對所有1 <= i <= n, 0<= j <= m。

只需要將資料接收到資料物件中,然後是單純的計算,最後的尋找最大值時也只需要一次遍歷即可完成。

/*

20190925

csp試題1:小明種蘋果

*/#include

using

namespace std;

1001];

int drops[

1001][

1001];

int tree_drop[

1001];

intmain()

}//計算最後的蘋果總數

int all =0;

int drop_num =0;

for(

int i=

0; i

all = all + drop_num;

//計算疏果最多的蘋果樹編號及疏果個數

//計算每棵樹減去的蘋果數

int temp =0;

for(

int i=

0; i

) tree_drop[i]

=-temp;

temp =0;

}//找最大值和對應編號

int max_num = tree_drop[0]

;int id =1;

for(

int i=

1; i

//輸出

cout <

" "<

" "<

return0;

}

這個題並不難,在示例1的解釋中甚至給出了求最後剩餘蘋果個數的過程。

csp2019 9小明種蘋果

題目描述 小明在他的果園裡種了一些蘋果樹。為了保證蘋果的品質,在種植過程中要進行若干輪疏果操作,也就是提前從樹上把不好的蘋果去掉。第一輪疏果操作開始前,小明記錄了每棵樹上蘋果的個數。每輪疏果操作時,小明都記錄了從每棵樹上去掉的蘋果個數。在最後一輪疏果操作結束後,請幫助小明統計相關的資訊。輸入格式 從...

csp201909 2小明種蘋果續

定義輸入n 二維陣列 輸出t總數 d掉落棵樹 e掉落組數 定義last記錄上次掉落的編號,flag 1表示兩次連續掉落,不掉落歸零 spec 1表示1 2都掉落了,spec 2表示只有1掉落 對每個i用for迭代,最後乙個正數為t分量 將每行第二個數,與所有負數求和與最後一位正數比較,得出d分量 定...

CSP認證真題 201909 1 小明種蘋果

備考csp認證c 第一天,東西忘得差不多了,這道題主要是作為第一道是難度最低的,主要是一維陣列 二維陣列的四則以及最值比較,之前用min element 函式進行陣列操作,雖然兩個樣例的輸出都滿足預期但是,系統判定為運算錯誤只能拿到70分,轉而用這種基礎的解決方法。主要思路 第乙個問題 求剩餘蘋果總...