201909 2 小明種蘋果(續)Python

2021-10-10 06:26:36 字數 1302 閱讀 3644

總結

n =

int(

input()

)res_drop =

#記錄所有樹的掉蘋果情況

count_drop =

0#記錄掉的蘋果數量

res =

0#記錄所有的蘋果數量

for i in

range

(n):

temp =

list

(map

(int

,input()

.split())

) abs_now = temp[1]

mark =

0#標記這顆樹掉了蘋果

ans =

0#記錄每一顆樹的蘋果數量

for i in

range

(temp[0]

):i +=

1if i ==1:

ans += temp[i]

if i !=

1and temp[i]

>0:

if ans == temp[i]

:continue

else

:if mark ==-1

: ans = temp[i]

continue

else

: mark =-1

ans = temp[i]1)

count_drop +=

1if temp[i]

<0:

ans += temp[i]

res += ans

if mark ==0:

0)num =

0#將第一二顆樹的情況插入最後,這樣就可以判斷所有的情況。0]

)1])

for i in

range

(n):

if res_drop[i]==1

and res_drop[i+1]

==1and res_drop[i+2]

==1: num +=

1print

(' '

.join(

[str

(res)

,str

(count_drop)

,str

(num)])

)

本題難點是判斷連續掉3顆蘋果的組數,因為題目對組的定義是將蘋果樹排成了乙個圓,於是我就將第一二個蘋果情況插入隊尾,這樣遍歷原來的列表就可以判斷所有的組。**沒有進行優化,是憑我的第一感覺寫的,所以比較冗雜。

CCF CSP 201909 2 小明種蘋果(續)

試題編號 201909 2 試題名稱 小明種蘋果 續 時間限制 1.0s 記憶體限制 1.用乙個陣列drop 1001 記錄每棵樹是否掉蘋果 2.在遍歷每顆樹時,用變數記錄當前蘋果個數,如果遍歷到正數,則比較它和變數中值的大小,如果不相等,則說明掉了蘋果,修改當前變數值,並修改陣列中的標記 3.每遍...

CCF 201909 2 小明種蘋果(續)

include define maxsize 1000 bool has maxsize has i true,第i 1棵樹上有掉落 int n 蘋果樹的棵數 int t t為全部疏果後所有蘋果總數 int d d為發生蘋果掉落的蘋果樹的棵數 int e e為相鄰連續三棵樹發生蘋果掉落情況的組數 i...

CCF CSP 201909 2 小明種蘋果 續

小明在他的果園種了一些蘋果樹,這些蘋果樹排列成乙個圓。為了保證蘋果的品質,在種植過程中要進行疏果操作。為了更及時地完成疏果操作,小明會不時地檢查每棵樹的狀態,根據需要進行疏果。檢查時,如果發現可能有蘋果從樹上掉落,小明會重新統計樹上的蘋果個數 然後根據之前的記錄就可以判斷是否有蘋果掉落了 在全部操作...