# [C (gcc)], 62 bytes
<!-- language-all: lang-c -->
o(char*s){return!s[1]|!s[2]||(*s-s[1])*(s[1]-s[2])>=0&o(s+1);}
Assumes signed `char`.
[Try it online!]
[C (gcc)]: https://gcc.gnu.org/
[Try it online!]: https://tio.run/nexus/c-gcc#VYzBDoIwEETvfMVag2kRjHgU5UeUQ20LNNFiuuUEfDu2qDHuYSc7O/PmjoqW2wTZYJXrrVnhJa9Gvw/VONIEs3CzhAbJgsvK837TUdzmrJjmtTbi3ksFJ3RSd7u2jCJtHDiFDhY0eDYMEfh5Wv@qKYnxCLG8GpICpuBZjBXR9C4@uDb0WwgUSvhNSFU3xId@ZlMrKW783/wkvZCFOL8A "C (gcc) – TIO Nexus"