From c3a1dfd2e47a6412861f27c6f1925da4f061f46d Mon Sep 17 00:00:00 2001 From: crupest Date: Sun, 28 Feb 2021 17:52:47 +0800 Subject: import(solutions): Add problem 896. --- works/solutions/leetcode/cpp/896.cpp | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 works/solutions/leetcode/cpp/896.cpp (limited to 'works/solutions/leetcode/cpp/896.cpp') diff --git a/works/solutions/leetcode/cpp/896.cpp b/works/solutions/leetcode/cpp/896.cpp new file mode 100644 index 0000000..25bd528 --- /dev/null +++ b/works/solutions/leetcode/cpp/896.cpp @@ -0,0 +1,35 @@ +#include + +using std::vector; + +enum Order { Ascend, Descend, Unknown }; + +class Solution { +public: + bool isMonotonic(vector &A) { + Order order = Unknown; + + int count = A.size(); + for (int i = 1; i < count; i++) { + int last = A[i - 1]; + int current = A[i]; + if (order == Unknown) { + if (current > last) { + order = Ascend; + } else if (current < last) { + order = Descend; + } + } else if (order == Ascend) { + if (last > current) { + return false; + } + } else { + if (last < current) { + return false; + } + } + } + + return true; + } +}; -- cgit v1.2.3