Re: [閒聊] 每日leetcode已回收

看板Marginalman作者 (早瀬ユウカの体操服 )時間1年前 (2024/04/10 10:25), 編輯推噓1(100)
留言1則, 1人參與, 1年前最新討論串108/1548 (看更多)
https://leetcode.com/problems/reveal-cards-in-increasing-order 950. Reveal Cards In Increasing Order 給你一堆卡牌,每個卡牌你可以隨便排序,初始狀態下卡牌都是覆蓋的,你一輪你可以: 1.翻開一張卡牌並移除他 2.將沒被覆蓋的卡牌(如果有)移到牌組末尾 3.不斷重複直到所有卡牌都被移除 求出一個順序可以確保每次移除的卡牌都是遞增的。 思路: 1.先把牌組排序確定每次要抽出來的牌順序。 2.用queue模擬抽排和洗牌,找出下次抽出的位置,然後按照順序把牌放進去。 py code: --------------------------------------------- class Solution: def deckRevealedIncreasing(self, deck: List[int]) -> List[int]: deck.sort(key = lambda x:-x) dq = deque([i for i in range(len(deck))]) res = [0] * len(deck) while dq: idx = dq.popleft() res[idx] = deck.pop() if dq: dq.append(dq.popleft()) return res --------------------------------------------- 一開始以為可以找出某種規律 想了很久結果還是只能模擬== -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 101.139.229.185 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1712715906.A.736.html

04/10 11:33, 1年前 , 1F
沒規律喔== 幹 我想了一個小時
04/10 11:33, 1F
文章代碼(AID): #1c5VY2Ss (Marginalman)
討論串 (同標題文章)
文章代碼(AID): #1c5VY2Ss (Marginalman)