1726 同積元組

2021-10-16 07:47:35 字數 1259 閱讀 8086

題目描述:

給你乙個由 不同 正整數組成的陣列 nums ,請你返回滿足 a * b = c * d 的元組 (a, b, c, d) 的數量。其中 a、b、c 和 d 都是 nums 中的元素,且 a != b != c != d 。

示例 1:

輸入:nums = [2,3,4,6]

輸出:8

解釋:存在 8 個滿足題意的元組:

(2,6,3,4) , (2,6,4,3) , (6,2,3,4) , (6,2,4,3)

(3,4,2,6) , (3,4,2,6) , (3,4,6,2) , (4,3,6,2)

示例 2:

輸入:nums = [1,2,4,5,10]

輸出:16

解釋:存在 16 個滿足題意的元組:

(1,10,2,5) , (1,10,5,2) , (10,1,2,5) , (10,1,5,2)

(2,5,1,10) , (2,5,10,1) , (5,2,1,10) , (5,2,10,1)

(2,10,4,5) , (2,10,5,4) , (10,2,4,5) , (10,2,4,5)

(4,5,2,10) , (4,5,10,2) , (5,4,2,10) , (5,4,10,2)

示例 3:

輸入:nums = [2,3,4,6,8,12]

輸出:40

示例 4:

輸入:nums = [2,3,5,7]

輸出:0

1 <= nums.length <= 1000

1 <= nums[i] <= 104

nums 中的所有元素 互不相同

方法1:

(1)對於每一組滿足要求的四個數,通過調整順序,相當於是8組;

(2)使用unordered_map統計所有的可能的兩數之和,然後遍歷統計的unordered_map;

(3)對於同乙個和,則可能的組成的四個數的數量為it.second*(it.second-1)/2;

class

solution

}//統計各個和下的四個數的組成

for(

auto

&it:mp)

//返回結果

return

8* res;}}

;

LeetCode 1726 同積元組

給你乙個由 不同 正整數組成的陣列 nums 請你返回滿足 a b c d 的元組 a,b,c,d 的數量。其中 a b c 和 d 都是 nums 中的元素,且 a b c d 示例 1 輸入 nums 2,3,4,6 輸出 8 解釋 存在 8 個滿足題意的元組 2,6,3,4 2,6,4,3 6...

晶元代工商力積電已開始同客戶洽談2023年訂單

techweb 6月16日訊息,據國外 報道,今年年初始於汽車領域的全球性晶元短缺,波及到了福特 現代汽車等眾多廠商,目前仍在持續,智慧型手機 家電等領域的晶元,也出現了供不應求的訊息。多個領域的晶元供不應求,也拉公升了對晶元代工的需求,多家晶元代工商程式設計客棧在今年一季度就已開始滿負荷執行。在晶...

一元線性同餘方程組

由若干個一元線性同餘方程組構成的方程組,叫做一元線同餘方程組。我們可以將其統一劃成a x b mod m 的形式,這樣有利於演算法的實現。既然是對同餘方程組求解,那麼必然得先會對同餘方程求解,如果對同餘方程求解仍有疑問,可以參考 對於同於方程組的求解,其實質過程就是對於其中的同餘方程依次進行兩兩合併...