코딩 테스트/LeetCode
2540. Minimum Common Value (최소 공통 값)
포카리tea
2024. 10. 7. 16:28
감소하지 않는 순서로 정렬된 두 개의 정수 배열 nums1과 nums2가 주어지면 두 배열에 공통되는 최소 정수를 반환합니다. nums1과 nums2 사이에 공통 정수가 없는 경우 -1을 반환합니다.
두 배열 모두 해당 정수가 하나 이상 존재하는 경우 정수는 nums1 및 nums2에 공통이라고 합니다.
예시 1:
입력: nums1 = [1,2,3], nums2 = [2,4]
출력: 2
설명: 두 배열에 공통적으로 사용되는 가장 작은 원소는 2이므로 2를 반환합니다.
예시 2:
입력: nums1 = [1,2,3,6], nums2 = [2,3,4,5]
출력: 2
설명: 배열에는 2와 3, 두 개의 공통 요소가 있고 그 중 2가 가장 작으므로 2가 반환됩니다.
조건:
- 1 <= nums1.length, nums2.length <= 10^5
- 1 <= nums1[i], nums2[j] <= 10^9
- num1과 num2는 모두 내림차순으로 정렬됩니다.
정답:
public class Solution {
public int GetCommon(int[] nums1, int[] nums2) {
return nums1.Intersect(nums2).FirstOrDefault(-1);
}
}
해설: nums1과 nums2를 Intersect를 이용하여 교집합을 구합니다.
모두 내림차순으로 정렬되므로 첫번째로 반환하는 수는 최소 공통 값이므로 FirstOrDefault를 이용하여 첫 번째 요소를 return해주고 없다면 기본값인 -1을 return합니다.