Website Summary Files Commits Branches @commit @diff @stats
path: root / Seminar03 / task03.cpp
diff options
context:
space:
mode:
Commit7eee5a78005a9a569186d2c8b4b645a818ab9bf1 (patch)
Author
 Stoycho Kyosev <skyosev@192.168.100.17>
2024-10-06 07:04:44 -0400
Committer
 Stoycho Kyosev <skyosev@192.168.100.17>
2024-10-06 07:04:44 -0400
Files84594e0af29cefa5aae76ace5f8eb81484400e31 /Seminar03/task03.cpp
Data-structures-and-algorithms-7eee5a78005a9a569186d2c8b4b645a818ab9bf1.tar
Data-structures-and-algorithms-7eee5a78005a9a569186d2c8b4b645a818ab9bf1.tar.gz
Data-structures-and-algorithms-7eee5a78005a9a569186d2c8b4b645a818ab9bf1.zip
Parent0841635826cb03c0e74cd75ec3c97c4c3b594d8b (diff)
Cleanup
1 files changed, 0 insertions, 41 deletions
-rw-r--r--Seminar03/task03.cpp41
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<iostream>
-#include<deque>
-#include<vector>
-
-std::vector<int> maxSlidingWindow(const std::vector<int>& v, size_t k) {
- std::deque<int> window;
- std::vector<int> 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<int> example = {1, 3, -1, -3, 5, 3, 6, 7};
-
- std::vector<int> result = maxSlidingWindow(example, 3);
-
- for(auto elem : result)
- std::cout << elem << " ";
-} \ No newline at end of file