class Solution {
public:
bool checkPossibility(vector<int>& nums) {
if(nums.size() == 0)
return false;
int n = 0;
for(int i = 1; i < nums.size(); ++i)
{
if(nums[i] < nums[i-1])
{
++n;
if(i>=2 && i < nums.size()-1 && nums[i] < nums[i-2] && nums[i-1] > nums[i+1])
return false;
}
if(n > 1)
return false;
}
return true;
}
};