860 檸檬水找零 簡單

2022-01-18 09:54:16 字數 1317 閱讀 4487

題目**於力扣(leetcode)

目錄860. 檸檬水找零

該題可以用現實生活中的方式來完成模擬,即模擬情景,再用**的方式表現出現即可

定義兩個變數用於記錄 5 元及 10 元鈔票出現的次數

當出現 10 元時,判斷是否最少有乙個 5 元存在,即記錄 5 元鈔票的變數大於 0

當出現 20 元時,有 1 張 10 元加 1 張 5 元找零,3 張 5 元找零的兩種方式

那麼採用貪心法的思想,優先使用 1 張 10 元加 1 張 5 元找零方式,當條件不滿足時,再考慮 3 張 5 元找零的方式,均不滿足時,說明無法進行找零,return false

因為 5 元鈔票可以組成 10 元鈔票,而 10 元鈔票無法組成 5 元鈔票

public static boolean lemonadechange(int bills) 

// 排除特殊情況:陣列首位不為 5 時

if (bills[0] == 10 || bills[0] == 20)

for (int i = 0; i < bills.length; i++) else if (bills[i] == 10)

// 5 元加 1,10 元減 1

five --;

ten ++;

} else

// 10 元鈔票不夠時,再使用 3 張 5 元鈔票找零

else if (five >= 3) else }}

// 遍歷完陣列時,返回 true

檸檬水找零 860

在檸檬水攤上,每一杯檸檬水的售價為 5 美元。顧客排隊購買你的產品,按賬單 bills 支付的順序 一次購買一杯。每位顧客只買一杯檸檬水,然後向你付 5 美元 10 美元或 20 美元。你必須給每個顧客正確找零,也就是說淨交易是每位顧客向你支付 5 美元。注意,一開始你手頭沒有任何零錢。如果你能給每...

860 檸檬水找零

在檸檬水攤上,每一杯檸檬水的售價為 5 美元。顧客排隊購買你的產品,按賬單 bills 支付的順序 一次購買一杯。每位顧客只買一杯檸檬水,然後向你付 5 美元 10 美元或 20 美元。你必須給每個顧客正確找零,也就是說淨交易是每位顧客向你支付 5 美元。注意,一開始你手頭沒有任何零錢。如果你能給每...

860 檸檬水找零

在檸檬水攤上,每一杯檸檬水的售價為 5 美元。顧客排隊購買你的產品,按賬單 bills 支付的順序 一次購買一杯。每位顧客只買一杯檸檬水,然後向你付 5 美元 10 美元或 20 美元。你必須給每個顧客正確找零,也就是說淨交易是每位顧客向你支付 5 美元。注意,一開始你手頭沒有任何零錢。如果你能給每...