SOLUTION INFO
C++ · main.cpp
class Solution {
public:
int firstMissingPositive(vector<int>& nums) {
int N = (int)nums.size();
for(int i = 0; i < N; ++i) {
while(1 <= nums[i] && nums[i] <= N && nums[nums[i] - 1] != nums[i]) {
swap(nums[nums[i] - 1], nums[i]);
}
}
int ans = N + 1;
for(int i = 0; i < N; ++i) {
if(nums[i] != i + 1) {
ans = i + 1;
break;
}
}
return ans;
}
};
SOLUTION DESCRIPTION
풀이 설명
등록된 풀이 설명이 없습니다.