leetcode(리트코드)2월25일 challenge581-Shortest Unsorted Continuous Subarray
leetcode(리트코드)2월25일 challenge581-Shortest Unsorted Continuous Subarray
leetcode February 581 - Shortest Unsorted Continuous Subarray 문제입니다.
1. 문제
https://leetcode.com/problems/shortest-unsorted-continuous-subarray/
2. Input , Output
3. 분류 및 난이도
Medium 난이도입니다.
2월25일자 챌린지 문제입니다.
4. 문제 해석
- 해당 배열을 오름차순으로 바꿀 때 어느 부분을 바꿔야하는지 알고 그 길이를 리턴합니다.
5. code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
class Solution {
public:
int findUnsortedSubarray(vector<int>& nums) {
//정렬을 미리해서 비교를합니다.
vector<int> temp = nums;
sort(temp.begin(),temp.end());
int left = 0;
int right= nums.size()-1;
//left먼저 돕니다.
while(left<nums.size() && nums[left]==temp[left])
++left;
//만약 끝까지 돌았으면 이미 정렬된 상태입니다.
if(left==nums.size())
return 0;
while(right>=0 &&nums[right]==temp[right])
--right;
return right-left+1;
}
};
6. 결과 및 후기, 개선점
This post is licensed under CC BY 4.0 by the author.