From 7eee5a78005a9a569186d2c8b4b645a818ab9bf1 Mon Sep 17 00:00:00 2001 From: Stoycho Kyosev Date: Sun, 6 Oct 2024 07:04:44 -0400 Subject: Cleanup --- Seminar03/task03.cpp | 41 ----------------------------------------- 1 file changed, 41 deletions(-) delete mode 100644 Seminar03/task03.cpp (limited to 'Seminar03/task03.cpp') diff --git a/Seminar03/task03.cpp b/Seminar03/task03.cpp deleted file mode 100644 index eef4cf4..0000000 --- a/Seminar03/task03.cpp +++ /dev/null @@ -1,41 +0,0 @@ -#include -#include -#include - -std::vector maxSlidingWindow(const std::vector& v, size_t k) { - std::deque window; - std::vector result; - - for (size_t i = 0; i < k; i++) { - while(!window.empty() && window.back() < v[i]) { - window.pop_back(); - } - window.push_back(v[i]); - } - - result.push_back(window.front()); - - for (size_t i = k; i < v.size(); i++) { - if(window.front() == v[i - k]) { - window.pop_front(); - } - - while(!window.empty() && window.back() < v[i]) { - window.pop_back(); - } - - window.push_back(v[i]); - result.push_back(window.front()); - } - - return result; -} - -int main() { - std::vector example = {1, 3, -1, -3, 5, 3, 6, 7}; - - std::vector result = maxSlidingWindow(example, 3); - - for(auto elem : result) - std::cout << elem << " "; -} \ No newline at end of file -- cgit v1.3.1-26-gb76a