class Solution {
public:
    int findUnsortedSubarray(vector<int>& nums) {
        int max_l=-INT_MAX;
        int min_r=INT_MAX;
        int l=0;
        int r=-1;
        for(int i=0;i<nums.size();i++)
        {
            if(nums[i]<max_l)
            {
                r=i;
            }
            else{
                max_l=nums[i];
            }
        }
        for(int i=nums.size()-1;i>=0;i--)
        {
            if(nums[i]>min_r)
            {
                l=i;
            }
            else{
                min_r=nums[i];
            }
        }
        return r-l+1;

    }
};