Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Solution {
- public boolean checkPossibility(int[] nums) {
- int changes = 0;
- if (nums.length < 3) {
- return true;
- }
- if (nums[0] > nums[1]) {
- if (nums[1] > nums[2]) {
- return false;
- }
- changes++;
- }
- for (int i = 1; i < nums.length - 2; i++) {
- if (nums[i] > nums[i + 1]) {
- if (changes > 0) {
- return false;
- }
- if (i < nums.length - 2) {
- if (nums[i + 1] > nums[i + 2]) {
- return false;
- }
- if (nums[i] > nums[i + 2]) {
- if (i > 0 && nums[i - 1] > nums[i + 1]) {
- return false;
- }
- }
- changes++;
- i++;
- }
- }
- }
- if (nums[nums.length - 2] > nums[nums.length - 1]) {
- if (changes > 0) {
- return false;
- }
- }
- return true;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement