作者Rushia (みけねこ的鼻屎)
看板Marginalman
標題Re: [閒聊] 每日LeetCode
時間Tue Oct 3 14:03:07 2023
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
推 leafff: 我用Python,個人思路是用字典就可以 10/03 19:27
→ leafff: 統計各數字出現次數後再套公式即可 10/03 19:27
推 NTHUlagka: 樓上你那個做法應該是要iterate兩次吧 他這個只要一次 10/03 19:49
→ NTHUlagka: 應該好點 10/03 19:49