leetcode之Poor Pigs(458)
題目:
有1000只水桶,其中有且只有一桶裝的含有毒藥,其餘裝的都是水。它們從外觀看起來都一樣。如果小豬喝了毒藥,它會在15分鐘內死去。
問題來了,如果需要你在一小時內,弄清楚哪隻水桶含有毒藥,你最少需要多少隻豬?
回答這個問題,併為下列的進階問題編寫一個通用演算法。
進階:
假設有 n 只水桶,豬飲水中毒後會在 m 分鐘內死亡,你需要多少豬(x)就能在 p 分鐘內找出“有毒”水桶?n只水桶裡有且僅有一隻有毒的桶。
python程式碼:
class Solution(object): def poorPigs(self, buckets, minutesToDie, minutesToTest): pigs = 0 while (minutesToTest / minutesToDie + 1) ** pigs < buckets: pigs += 1 return pigs
相關推薦
leetcode之Poor Pigs(458)
題目: 有1000只水桶,其中有且只有一桶裝的含有毒藥,其餘裝的都是水。它們從外觀看起來都一樣。如果小豬喝了毒藥,它會在15分鐘內死去。 問題來了,如果需要你在一小時內,弄清楚哪隻水桶含有毒藥,你最少需要多少隻豬? 回答這個問題,併為下列的進階問題編寫一個通用演算法。
LeetCode之Easy篇 ——(7)Reverse Integer
environ 代碼 不能 調用 its while with 報錯 code 7、Reverse Integer Given a 32-bit signed integer, reverse digits of an integer. Example 1: Input:
LeetCode之Easy篇 ——(12)Roman to Integer
三次 所表 舉例 重復 str put size input inpu Given an integer, convert it to a roman numeral. Input is guaranteed to be within the range from 1 to
LeetCode之Easy篇 ——(13)Roman to Integer
i++ tco bre from input bsp roman 通過 數字 Given a roman numeral, convert it to an integer. Input is guaranteed to be within the range from 1
leetcode之Arranging Coins(441)
題目: 你總共有 n 枚硬幣,你需要將它們擺成一個階梯形狀,第 k 行就必須正好有 k 枚硬幣。 給定一個數字 n,找出可形成完整階梯行的總行數。 n 是一個非負整數,並且在32位有符號整型的範圍內。 示
leetcode之Move Zeroes(283)
題目: 給定一個數組 nums,編寫一個函式將所有 0 移動到陣列的末尾,同時保持非零元素的相對順序。 示例: 輸入: [0,1,0,3,12] 輸出: [1,3,12,0,0] 說明: 必須在原陣列上操作,不能拷貝額外的陣列。 儘量減少操作次數。 Python程
LeetCode 之Two Sum(C)
Given an array of integers, return indices of the two numbers such that they add up to a specific target. You may assume that each input
LeetCode 之Reverse Integer(C)
Given a 32-bit signed integer, reverse digits of an integer. 給定32位有符號整數,整數的反向數字。 Example 1: Input: 123 Output: 321 Example 2: In
LeetCode 之 Remove Element(C)
Given an array nums and a value val, remove all instances of that value in-place and return the new length. Do not allocate extra space f
leetcode之Binary Watch (401)
題目: 二進位制手錶頂部有 4 個 LED 代表小時(0-11),底部的 6 個 LED 代表分鐘(0-59)。 每個 LED 代表一個 0 或 1,最低位在右側。 例如,上面的二進位制手錶讀取 “3:25”。 給定一個非負整數 n 代表當前 LED 亮著的數量
LeetCode之Partition Labels(Kotlin)
問題: A string S of lowercase letters is given. We want to partition this string into as many parts as
leetcode之Add Strings(415)
題目: 給定兩個字串形式的非負整數 num1 和num2 ,計算它們的和。 注意: num1 和num2 的長度都小於 5100. num1 和num2 都只包含數字 0-9. num1 和num2 都不包含任何前導零。 你不能使用任何內建 BigInteger
leetcode之Reverse Bits(190)
題目: 顛倒給定的 32 位無符號整數的二進位制位。 示例: 輸入: 43261596 輸出: 964176192 解釋: 43261596 的二進位制表示形式為 00000010100101000001111010011100 , 返回 964176192,
leetcode 之 two sum (easy)c++
nbsp urn () lin for class result pre code 1.數組的長度 length() 2.容器vector長度 size() 3.容器vector vector是C++標準模板庫中的部分內容,它是一個多功能的,能夠操作多種數據結構和算
458. Poor Pigs(python+cpp)
題目: There are 1000 buckets, one and only one of them contains poison, the rest are filled with water
Leetcode之鏈表(前200道)
ica div eth color exc type rmi 鏈表 res Easy 1. Merge Two Sorted Lists: Merge two sorted linked lists and return it as a new list. The new
LeetCode 之 路徑總和(簡單 二叉樹)
問題描述: 給定一個二叉樹和一個目標和,判斷該樹中是否存在根節點到葉子節點的路徑,這條路徑上所有節點值相加等於目標和。 說明: 葉子節點是指沒有子節點的節點。 示例: 給定如下二叉樹,以及目標和 sum = 22, 5
LeetCode之Palindrome Number(迴文數 簡單 模擬)
問題描述: 確定整數是否是迴文。當它向前讀取向後時,整數是迴文。 例1: 輸入: 121 輸出: true 例2: 輸入: -121 輸出: false 說明:從左到右,它讀取-121。從右到左,它變成121-。因此它不是迴文。 例3: 輸入: 10 輸出:
LeetCode之Reverse Integer(反轉整數 簡單 模擬)
問題描述: 給定32位有符號整數,整數的反向數字。 例1: 輸入: 123 輸出: 321 例2: 輸入: -123 輸出: -321 例3: 輸入: 120 輸出: 21 注意: 假設我們正在處理一個只能在32位有符號整數範圍內儲存整數的環境:[ - 2
Leetcode題解之連結串列(6) 環形連結串列
題目:https://leetcode-cn.com/explore/interview/card/top-interview-questions-easy/6/linked-list/46/ 題目描述: 給定一個連結串列,判斷連結串列中是否有環。 進階: 你能否不使用額外空間解決此