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

看板Marginalman作者 (みけねこ的鼻屎)時間2年前 (2023/10/03 14:03), 編輯推噓2(202)
留言4則, 2人參與, 2年前最新討論串428/719 (看更多)
https://leetcode.com/problems/number-of-good-pairs/description 1512. Number of Good Pairs 給你一個整數陣列 nums,如果 nums[i] == nums[j] 且 i < j 則 (i, j) 是一個 Pair,求出 nums 共有幾個 Pair。 思路: 1.用一個 map 記錄之前出現過的數字數量,因為 nums[i] 介於 0 到 100 所以用 int[101]。 2.每一輪可以產生的 Pair 為累計先前出現過的數量,把每一輪的結果加總即可。 Java Code: ------------------------------------ class Solution { public int numIdenticalPairs(int[] nums) { int res = 0; int[] count = new int[101]; for (int num : nums) { res += count[num]++; } return res; } } ------------------------------------ -- https://i.imgur.com/PIoxddO.jpg
-- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 122.100.73.13 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1696312989.A.817.html

10/03 19:27, 2年前 , 1F
我用Python,個人思路是用字典就可以
10/03 19:27, 1F

10/03 19:27, 2年前 , 2F
統計各數字出現次數後再套公式即可
10/03 19:27, 2F

10/03 19:49, 2年前 , 3F
樓上你那個做法應該是要iterate兩次吧 他這個只要一次
10/03 19:49, 3F

10/03 19:49, 2年前 , 4F
應該好點
10/03 19:49, 4F
文章代碼(AID): #1b6wwTWN (Marginalman)
討論串 (同標題文章)
文章代碼(AID): #1b6wwTWN (Marginalman)