Python---贪心的狗熊
生活随笔
收集整理的這篇文章主要介紹了
Python---贪心的狗熊
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
【問題描述】
我們都聽說過狗熊掰棒子的故事。現(xiàn)在有一只狗熊拿著可以裝個(gè)玉米的口袋去掰棒子。如果新掰到的玉米比口袋中最上面的玉米重,則用新掰到的玉米去替換口袋中最上面的玉米;否則,只要口袋未滿,則將新掰到的玉米裝入。求最終袋中玉米總重量。
【輸入形式】
第一行輸入口袋可以裝載的玉米數(shù)目;之后m行輸入m個(gè)正整數(shù),表示待的玉米重量值,m=0表示結(jié)束。
【輸出形式】
一行一個(gè)整數(shù),表示最終袋中玉米總重量。
【樣例輸入】
3
6
4
10
3
6
4
7
2
0
【樣例輸出】
23
****【樣例說明】****袋子深度為3,第一個(gè)6裝入;第二個(gè)4比6小,袋子未滿故裝入;輸入10替換掉4;輸入3袋子未滿裝入;輸入6替換掉3;輸入4袋子已滿不裝;輸入7替換掉6;輸入2袋子已滿不裝;最
后袋子中的玉米為6、10、7,總重量為23
【代碼嘗試】
n = eval(input()) # 袋子容量 weight = 0 number = 0 # 記錄袋子已裝玉米數(shù)量 m = 0 # 輸入的正整數(shù) flag = 0 while 1:tmp = mm = eval(input())if m == 0:break# 若袋子還未裝滿if number < n:if m <= tmp:weight = weight + mnumber += 1else:weight = weight - tmp + mif number == 0:number += 1# 若袋子已經(jīng)裝滿,tmp_top---最上面的玉米else:if flag == 0:tmp_top = tmpflag += 1if m > tmp_top:weight = weight - tmp_top + mtmp_top = m print(weight)總結(jié)
以上是生活随笔為你收集整理的Python---贪心的狗熊的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 压缩包的加密、去除密码、解密
- 下一篇: 在域中自动安装软件