在 Python 中檢查一個編碼是否表示一個唯一的二進位制字串
假設我們有一個名為 nums 的陣列表示大小為 k 的二進位制字串的編碼,我們必須檢查給定的編碼是否唯一地查詢一個二進位制字串。此處的編碼具有連續的 1 的計數,這些計數由單個 0 分隔。
因此,如果輸入類似於 nums = [4, 2, 3] k = 11,則輸出將為 True,因為存在大小為 11 的二進位制字串 11110110111。
要解決此問題,我們將遵循以下步驟 -
- total := nums 中所有元素的總和
- total := total + nums 的大小 - 1
- 當總計與 k 相同時返回 true,否則返回 false
讓我們看看以下實現來獲得更好的理解 -
示例
def solve(nums, k): total = sum(nums) total += len(nums) - 1 return total == k nums = [4, 2, 3] k = 11 print(solve(nums, k))
輸入
[4, 2, 3], 11
輸出
True
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP