From 3c934ca8f0f3d6122863c26dc4d726965a37ed1c Mon Sep 17 00:00:00 2001 From: deadmarshal Date: Sat, 4 Nov 2023 19:38:44 +0330 Subject: TWC127 --- challenge-127/deadmarshal/cpp/ch-1.cpp | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 challenge-127/deadmarshal/cpp/ch-1.cpp (limited to 'challenge-127/deadmarshal/cpp/ch-1.cpp') diff --git a/challenge-127/deadmarshal/cpp/ch-1.cpp b/challenge-127/deadmarshal/cpp/ch-1.cpp new file mode 100644 index 0000000000..b6cf02bb6a --- /dev/null +++ b/challenge-127/deadmarshal/cpp/ch-1.cpp @@ -0,0 +1,30 @@ +#include +#include +#include + +template +bool is_disjoint(const std::set &s1, + const std::set &s2) +{ + for(auto it = s1.cbegin(); it != s1.cend(); ++it) + if(s2.count(*it)) return false; + return true; +} + +template +bool disjoint_sets(const std::vector &vec1, + const std::vector &vec2) +{ + return is_disjoint({vec1.cbegin(),vec1.cend()}, + {vec2.cbegin(),vec2.cend()}); +} + +int main() +{ + std::vector vec1{1,2,5,3,4},vec2{4,6,7,8,9}; + std::vector vec3{1,3,5,7,9},vec4{0,2,4,6,8}; + std::cout << std::boolalpha << disjoint_sets(vec1,vec2) << '\n' + << disjoint_sets(vec3,vec4) << '\n'; + return 0; +} + -- cgit