復(fù)盤|第287場周賽
轉(zhuǎn)化時間需要的最少操作數(shù)
【貪心】從大到小枚舉。
找出輸?shù)袅銏龌蛞粓霰荣惖耐婕?/strong>
【哈希表】用一個哈希映射記錄每個玩家輸?shù)舻拇螖?shù),對于每個鍵值對,鍵表示一名玩家,值表示該玩家輸?shù)舯荣惖拇螖?shù)。遍歷數(shù)組,遍歷到第i項(winner_i, loser_i),如果不存在就加入哈希映射,對應(yīng)的值為0,隨后將loser_i對應(yīng)的值加一。
每個小孩最多能分到多少糖果
【二分查找】每堆糖果越多,能分出來的子堆也越少,ans = ?Σcandies/k?。判斷每個小孩分到i個糖果時是否滿足要求。
二分答案,由于 x 越大 sum 越小,而bisect的key 需要一個增函數(shù)(非減)。
加密解密字符串
【哈希表】values允許有相同的字符串,因此不同字符串加密后的結(jié)果可能一致,一個字符串中揭秘出來的結(jié)果也可能不唯一,逆向思考,加密dic每個字符串,并用哈希表記錄每個加密后字符串的出現(xiàn)次數(shù),每次調(diào)用decypt時,返回哈希表中word2的出現(xiàn)次數(shù)。