[leetcode 刷题记录] 170. Two Sum III - Data structure design

来源:互联网 发布:大数据先进技术研究院 编辑:程序博客网 时间:2024/06/06 11:41

170. Two Sum III - Data structure design


Design and implement a TwoSum class. It should support the following operations: add and find.

add - Add the number to an internal data structure.
find - Find if there exists any pair of numbers which sum is equal to the value.

For example,

add(1); add(3); add(5);find(4) -> truefind(7) -> false

这个solution用到了multiset,multisite允许set中出现重复元素

class TwoSum {public:    // Add the number to an internal data structure.void add(int number) {    nums.insert(number);}    // Find if there exists any pair of numbers which sum is equal to the value.bool find(int value) {    for (auto n: nums) {        int count = value - n == n ? 2 : 1;        if (nums.count(value - n) >= count) return true;    }    return false;}private:    unordered_multiset<int> nums;};


0 0