diff --git a/2202/220209.cpp b/2202/220209.cpp new file mode 100644 index 0000000..0181f64 --- /dev/null +++ b/2202/220209.cpp @@ -0,0 +1,29 @@ +#include +#include +#include + +class Solution { +public: + static int findPairs(const std::vector& nums, int k) { + std::unordered_map m; + for (int i : nums) { + ++m[i]; + } + + int ret = 0; + for (auto const& pii : m) { + if ((k && m.count(pii.first + k) && m[pii.first + k]) || (!k && pii.second > 1)) { + ++ret; + } + } + return ret; + } +}; + +int main() { + std::cout << Solution::findPairs({3,1,4,1,5},2); + std::cout << Solution::findPairs({1,2,3,4,5},1); + std::cout << Solution::findPairs({1,3,1,5,4},0); + std::cout << Solution::findPairs({1,2,4,4,3,3,0,9,2,3},3); + return 0; +} diff --git a/2202/CMakeLists.txt b/2202/CMakeLists.txt index bb4e559..cdae31b 100644 --- a/2202/CMakeLists.txt +++ b/2202/CMakeLists.txt @@ -3,4 +3,4 @@ PROJECT(2202) SET(CMAKE_CXX_STANDARD 23) -ADD_EXECUTABLE(2202 220208-CN.cpp) +ADD_EXECUTABLE(2202 220209.cpp)