https://leetcode.com/problems/missing-number/description/
6ms
class Solution {
public int missingNumber(int[] nums) {
Arrays.sort(nums);
int start = -1;
boolean in = false;
for(int i = 0; i < nums.length; i++) {
if (nums[i] != ++start) {
in = true;
break;
}
}
if (!in) {
start++;
}
return start;
}
}
정렬 후 모든 요소가 다 존재하는지 체크
0ms
class Solution {
public int missingNumber(int[] nums) {
int sum = 0;
for(int n = 0; n <= nums.length; n++) {
sum += n;
}
for(int num: nums) {
sum -= num;
}
return sum;
}
}
0부터 n까지 모두 더한 합에서 nums를 모두 뺀다.
그러면 마지막에 나온 값이 빠져있는 요소값이다.
문제를..어쩌면 똑바로 안 읽어서 6ms와 같이 풀었던 거 같다.
0~n 까지 있고 주어진 nums보다 무조건 크기가 1이 더 크기 때문에 nums의 length가 n이다.
'코딩테스트' 카테고리의 다른 글
994. Rotting Oranges (0) | 2024.02.21 |
---|---|
75. Sort Colors (0) | 2024.02.18 |
283. Move Zeroes (0) | 2024.02.17 |
100. Same Tree (0) | 2024.02.17 |
409. Longest Palindrome (0) | 2024.02.17 |