<?php
function almostIncreasingSequence($sequence) {
$foundOne = false;
for ($i = -1, $j = 0, $k = 1; $k < count($sequence); $k++) {
$deleteCurrent = false;
if ($sequence[$j] >= $sequence[$k])
{
if ($foundOne)
{
return false;
}
$foundOne = true;
if ($k > 1 && $sequence[$i] >= $sequence[$k])
{
$deleteCurrent = true;
}
}
if (!$foundOne)
{
$i = $j;
}
if (!$deleteCurrent)
{
$j = $k;
}
}
return true;
}
var_dump(almostIncreasingSequence
([1,3,2]));//true var_dump(almostIncreasingSequence
([1,3,2,1]));//false var_dump(almostIncreasingSequence
([2,1,2,3]));//true
var_dump(almostIncreasingSequence
([1,2,3])); var_dump(almostIncreasingSequence
([1,2,3,0])); var_dump(almostIncreasingSequence
([9,1,2,3,0])); var_dump(almostIncreasingSequence
([1,2,9,3,4])); var_dump(almostIncreasingSequence
([1,2,9,0,3,4])); var_dump(almostIncreasingSequence
([1,2,8,9,3,4]));
PD9waHAKCmZ1bmN0aW9uIGFsbW9zdEluY3JlYXNpbmdTZXF1ZW5jZSgkc2VxdWVuY2UpIHsKICAgICRmb3VuZE9uZSA9IGZhbHNlOwoKICAgIGZvciAoJGkgPSAtMSwgJGogPSAwLCAkayA9IDE7ICRrIDwgY291bnQoJHNlcXVlbmNlKTsgJGsrKykKICAgIHsKICAgICAgICAkZGVsZXRlQ3VycmVudCA9IGZhbHNlOwogICAgICAgIGlmICgkc2VxdWVuY2VbJGpdID49ICRzZXF1ZW5jZVska10pCiAgICAgICAgewogICAgICAgICAgICBpZiAoJGZvdW5kT25lKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgJGZvdW5kT25lID0gdHJ1ZTsKICAgICAgICAgICAgaWYgKCRrID4gMSAmJiAkc2VxdWVuY2VbJGldID49ICRzZXF1ZW5jZVska10pCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICRkZWxldGVDdXJyZW50ID0gdHJ1ZTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAoISRmb3VuZE9uZSkKICAgICAgICB7CiAgICAgICAgICAgICRpID0gJGo7CiAgICAgICAgfQogICAgICAgIGlmICghJGRlbGV0ZUN1cnJlbnQpCiAgICAgICAgewogICAgICAgICAgICAkaiA9ICRrOwogICAgICAgIH0KICAgIH0KICAgIHJldHVybiB0cnVlOwp9Cgp2YXJfZHVtcChhbG1vc3RJbmNyZWFzaW5nU2VxdWVuY2UoWzEsMywyXSkpOy8vdHJ1ZQp2YXJfZHVtcChhbG1vc3RJbmNyZWFzaW5nU2VxdWVuY2UoWzEsMywyLDFdKSk7Ly9mYWxzZQp2YXJfZHVtcChhbG1vc3RJbmNyZWFzaW5nU2VxdWVuY2UoWzIsMSwyLDNdKSk7Ly90cnVlCgp2YXJfZHVtcChhbG1vc3RJbmNyZWFzaW5nU2VxdWVuY2UoWzEsMiwzXSkpOwp2YXJfZHVtcChhbG1vc3RJbmNyZWFzaW5nU2VxdWVuY2UoWzEsMiwzLDBdKSk7CnZhcl9kdW1wKGFsbW9zdEluY3JlYXNpbmdTZXF1ZW5jZShbOSwxLDIsMywwXSkpOwp2YXJfZHVtcChhbG1vc3RJbmNyZWFzaW5nU2VxdWVuY2UoWzEsMiw5LDMsNF0pKTsKdmFyX2R1bXAoYWxtb3N0SW5jcmVhc2luZ1NlcXVlbmNlKFsxLDIsOSwwLDMsNF0pKTsKdmFyX2R1bXAoYWxtb3N0SW5jcmVhc2luZ1NlcXVlbmNlKFsxLDIsOCw5LDMsNF0pKTsK