檢查在 Python 中是否可以在島上生存
假設有一個島嶼。該地點只有一家商店,這家商店始終營業,除了星期天。我們有以下值作為輸入 -
- N(某人每天最多可以購買的食物數量)。
- S(某人需要生存的天數)。
- M(每天生存所需的食品數量)。
如果今天是星期一,我們需要在接下來的 S 天內生存。我們必須檢查我們是否能夠生存,如果可以,找到我們需要購買食品的最少天數,以便我們能夠在接下來的 S 天內生存。
因此,如果輸入類似於 S = 12、N = 24、M = 3,則輸出將為 True,我們需要購買食品的最少天數為 2,因為我們可以使用 24 單位的食物生存 8 天(從當前星期一到下一個星期一),然後再次購買 12 單位的食物以供未來 4 天使用。
為了解決這個問題,我們將遵循以下步驟 -
- 如果 (N * 6 < M * 7 且 S > 6) 或 M > N,則
- 返回 False
- 否則,
- count := (M * S) / N 的商
- 如果 (M * S) 可以被 N 整除,則
- count := count + 1
- 返回 True 和 count
示例
讓我們看看以下實現以更好地理解 -
def solve(S, N, M): if ((N * 6) < (M * 7) and S > 6) or M > N: return False else: count = (M * S) // N if ((M * S) % N) != 0: count += 1 return (True, count) S = 12 N = 24 M = 3 print(solve(S, N, M))
輸入
12, 24, 3
輸出
(True, 2)
廣告
資料結構
網路
關係資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP