summaryrefslogtreecommitdiff
path: root/5p17.cpp
diff options
context:
space:
mode:
authorOskar <[email protected]>2024-08-30 18:32:44 +0200
committerOskar <[email protected]>2024-08-30 18:32:44 +0200
commit8f54ef4d7e1c112e6dde2947a6a9a27c8393f899 (patch)
treeb03a37618329a3a00976028e702290596e2171d7 /5p17.cpp
parent2952047fe741ca5b3717e066e0a6aeac699ee4c1 (diff)
more
Diffstat (limited to '5p17.cpp')
-rw-r--r--5p17.cpp44
1 files changed, 44 insertions, 0 deletions
diff --git a/5p17.cpp b/5p17.cpp
new file mode 100644
index 0000000..154996f
--- /dev/null
+++ b/5p17.cpp
@@ -0,0 +1,44 @@
+#include <iostream>
+#include <vector>
+
+/*
+ *
+ * 5.17
+ *
+ *
+ */
+
+int main () {
+
+ std::vector<int> v1 = {1,1,1,1,2};
+ std::vector <int> v2 = {1,1,1,1,2};
+ auto v1l = v1.size();
+ auto v2l = v2.size();
+ decltype(v1.cend()) smallestend;
+ decltype(v1.cbegin()) smallestbeg;
+ decltype(v1.cbegin()) biggestbeg;
+ if(v1l > v2l) {
+ smallestend = v2.cend();
+ smallestbeg = v2.cbegin();
+ biggestbeg = v1.cbegin();
+ } else if (v2l > v1l) {
+ smallestend = v1.cend();
+ smallestbeg = v1.cbegin();
+ biggestbeg = v2.cbegin();
+ } else if (v1l == v2l) {
+ smallestend = v1.cend();
+ smallestbeg = v1.cbegin();
+ biggestbeg = v2.cbegin();
+ }
+
+ bool determine_prefix = true;
+ for( ; smallestbeg != smallestend ; ++smallestbeg, ++biggestbeg) {
+ if(*smallestbeg != *biggestbeg) {
+ determine_prefix = false;
+ break;
+ }
+ }
+
+ std::cout << (determine_prefix ? "true" : "false") << std::endl;
+ return 0;
+}