Solution
C++ []\nclass MyHashSet {\npublic:\n        vector<bool> ans;\n    MyHashSet() {\n        ans.resize(1e6+1,false);\n    }\n    void add(int key) {\n        ans[
```C++ []\nclass MyHashSet {\npublic:\n        vector<bool> ans;\n    MyHashSet() {\n        ans.resize(1e6+1,false);\n    }\n    void add(int key) {\n        ans[key]=true;\n    }\n    void remove(int key) {\n        ans[key]=false;\n    }\n    bool contains(int key) {\n        return ans[key];\n    }\n};\n```\n\n```Python3 []\nclass MyHashSet:\n\n    def __init__(self):\n        self.l={}\n\n    def add(self, key: int) -> None:\n        self.l[key]=1\n\n    def remove(self, key: int) -> None:\n        if key in self.l:\n            del self.l[key]\n\n    def contains(self, key: int) -> bool:\n        return key in self.l\n```\n\n```Java []\nclass MyHashSet {\n    \n    boolean buckets[][];\n    int bucket = 10000;\n    int bucketItem = 10000;\n    \n    public MyHashSet() {\n        buckets = new boolean[bucket][];\n    }\n    public int getBucket(int key){\n        return key / bucket;\n    }\n    public int getBucketItem(int key){\n        return key % bucketItem;\n    }\n    public void add(int key) {\n        int bucketKey = getBucket(key);\n        int bucketItemkey = getBucketItem(key);\n        \n        if(buckets[bucketKey] == null)\n            buckets[bucketKey] = new boolean[bucketItem];\n        buckets[bucketKey][bucketItemkey] = true;\n    }\n    public void remove(int key) {\n        \n        int bucketKey = getBucket(key);\n        int bucketItemkey = getBucketItem(key);\n        \n        if(buckets[bucketKey] != null)\n             buckets[bucketKey][bucketItemkey] = false;\n    }\n    public boolean contains(int key) {\n        int bucketKey = getBucket(key);\n        int bucketItemkey = getBucketItem(key);\n        \n         if(buckets[bucketKey] != null)\n             return  buckets[bucketKey][bucketItemkey];\n        return false;\n    }\n}\n```\n
['C++', 'Java', 'Python3']