Easy
You are given two 0-indexed integer arrays nums1 and nums2 of sizes n and m, respectively.
Consider calculating the following values:
i such that 0 <= i < n and nums1[i] occurs at least once in nums2.i such that 0 <= i < m and nums2[i] occurs at least once in nums1.Return an integer array answer of size 2 containing the two values in the above order.
Example 1:
Input: nums1 = [4,3,2,3,1], nums2 = [2,2,5,2,3,6]
Output: [3,4]
Explanation: We calculate the values as follows:
Example 2:
Input: nums1 = [3,4,2,3], nums2 = [1,5]
Output: [0,0]
Explanation: There are no common elements between the two arrays, so the two values will be 0.
Constraints:
n == nums1.lengthm == nums2.length1 <= n, m <= 1001 <= nums1[i], nums2[i] <= 100class Solution {
fun findIntersectionValues(nums1: IntArray, nums2: IntArray): IntArray {
val freq2 = IntArray(101)
val freq1 = IntArray(101)
val ans = IntArray(2)
for (j in nums2) {
freq2[j] = 1
}
for (j in nums1) {
freq1[j] = 1
ans[0] = ans[0] + freq2[j]
}
for (j in nums2) {
ans[1] = ans[1] + freq1[j]
}
return ans
}
}