diff options
| author | Jan Krňávek <Jan.Krnavek@gmail.com> | 2020-11-15 09:04:35 +0100 |
|---|---|---|
| committer | Jan Krňávek <Jan.Krnavek@gmail.com> | 2020-11-15 09:04:35 +0100 |
| commit | e29dae3e932026fa0ef6c6f57dcb07fadd52856a (patch) | |
| tree | da329e425ba812ce122f3a112461780999514cf9 /challenge-086/hstejas/cpp/ch-1.cpp | |
| parent | fe386961e5846533182f55716aa7156f34c070ed (diff) | |
| parent | 4c31310c2fcdcc28b67276d0d5a90fdf820d8b48 (diff) | |
| download | perlweeklychallenge-club-e29dae3e932026fa0ef6c6f57dcb07fadd52856a.tar.gz perlweeklychallenge-club-e29dae3e932026fa0ef6c6f57dcb07fadd52856a.tar.bz2 perlweeklychallenge-club-e29dae3e932026fa0ef6c6f57dcb07fadd52856a.zip | |
Merge remote-tracking branch 'upstream/master' into challenge-week-086
Diffstat (limited to 'challenge-086/hstejas/cpp/ch-1.cpp')
| -rw-r--r-- | challenge-086/hstejas/cpp/ch-1.cpp | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/challenge-086/hstejas/cpp/ch-1.cpp b/challenge-086/hstejas/cpp/ch-1.cpp new file mode 100644 index 0000000000..79fa9a55bc --- /dev/null +++ b/challenge-086/hstejas/cpp/ch-1.cpp @@ -0,0 +1,43 @@ +#include <iostream> +#include <algorithm> +#include <vector> + +// g++ --std=c++17 c1.cpp && ./a.out + +void pair_diff(unsigned int reference, std::vector<int> nums) +{ + std::sort(nums.begin(), nums.end(), std::greater<int>()); + auto start = nums.begin(); + auto curr = start; + while(start != nums.end() && curr != nums.end()) + { + ++curr; + int diff = std::abs(*start - *curr); + if(diff == reference) + { + std::cout << "1 as " << *start << " - " << *curr << " = " << diff << std::endl; + return; + } + else if (diff > reference) + { + ++start; + curr = start; + } + } + std::cout << "0" << std::endl; +} + +int main() +{ + std::vector<std::pair< int, std::vector<int>>> tests { + {7, {50, 8, 12, 15, 5} }, + {6, {1, 5, 2, 9, 7} }, + {15, {10, 30, 20, 50, 40} }, + {15, {-15, -5, -30, 20, 50, 40} } + }; + + for (auto test : tests) + { + pair_diff(test.first, test.second); + } +}
\ No newline at end of file |
