整数arr1、arr2、整数dの2つの配列を取得し、2つの配列間の距離を返します。
「距離値」は、この説明に一致する要素の数として定義されます。要素arr1 [i]の場合、arr2 [j]は存在しません| arr1 [i] -arr2 [j] | <= d。
例1:
入力:arr1 = [4,5,8]、arr2 = [10,9,1,8]、d = 2
出力:2
説明:
arr1 [0] = 4の場合:
| 4-10 | = 6> d = 2
| 4-9 | = 5> d = 2
| 4-1 | = 3> d = 2
| 4-8 | = 4>
arr1 [1] = 5の場合、d = 2 :
| 5-10 | = 5> d = 2
| 5-9 | = 4> d = 2
| 5-1 | = 4> d = 2
| 5-8 | = 3> d = 2
arr1 [2] = 8の場合:
| 8-10 | = 2 <= d = 2
| 8-9 | = 1 <= d = 2
| 8-1 | = 7> d = 2
| 8-8 | = 0 <= d =
2例2:
入力:arr1 = [1,4,2,3]、arr2 = [-4、-3,6,10,20,30]、d = 3
出力:2
例3:
入力:arr1 = [2,1,100,3]、arr2 = [-5、-2,10、-3,7]、d = 6
出力:1
ヒント:
1 <= arr1.length、arr2.length <= 500
-10 ^ 3 <= arr1 [i]、arr2 [j] <= 10 ^ 3
0 <= d <= 100
ソース:LeetCode(LeetCode)
リンク:https ://leetcode-cn.com/problems/find-the-distance-value-between-two-arrays
著作権は控除ネットワークに属しています。商用転載の正式な許可書に連絡し、非商用転載の出典を明記してください。
アイデア:
データサイズが小さいため、直接二重暴力ソリューションに直接アクセスします。
時間の複雑さ:O(N ^ 2)
スペースの複雑さ:O(1)
class Solution(object):
def findTheDistanceValue(self, arr1, arr2, d):
"""
:type arr1: List[int]
:type arr2: List[int]
:type d: int
:rtype: int
"""
res = 0
for num1 in arr1:
flag = 1
for num2 in arr2:
if abs(num1 - num2) <= d:
flag = 0
break
if flag:
res += 1
return res