我給出了包含正整數的兩個數組(可以包含重複項和相同長度)。當數字只能在兩個數組中使用一次時,我必須找到絕對差異小於等於特定值(給定)的最大對數。如何找到差值小於特定值的最大對數?
例如:
arr1 = {1,2,3,4}
arr2 = {8,9,10,11}
diff = 5
然後,可以對爲(3,8),(4,8)。也就是說,只有兩種這樣的可能配對。
輸出應該爲2
另外,我能想到的算法中的此在爲O(n^2)。但是,我需要更好的東西。我想過哈希映射(不會工作,因爲數組包含重複項),想到按降序和升序對數組進行排序,並沒有真正能夠從那裏向前移動。
你的第二句話沒寫清楚。你的意思是:「我必須找到絕對差值小於或等於給定值的唯一對數。」 –
是的,但是如果數字一旦用來組成一對,他們就不能再次使用。 –
我正在投票結束這個問題,因爲這是一個正在進行的競爭,將在一天內完成。 –