Simulation
We pre-populate the result array with all numbers, and set a number to zero once visited.\n\nAfter the simulation, we return remaining non-zero numbers.\n\nPyth
We pre-populate the result array with all numbers, and set a number to zero once visited.\n\nAfter the simulation, we return remaining non-zero numbers.\n\n**Python 3**\n```python\nclass Solution:\n    def circularGameLosers(self, n: int, k: int) -> List[int]:\n        s = set([i for i in range(1, n + 1)])\n        for mul in accumulate([i for i in range(n)]):\n            if k * mul % n + 1 not in s:\n                break\n            s.remove(k * mul % n + 1)\n        return s\n```\n\n**C++**\n``` cpp\nvector<int> circularGameLosers(int n, int k) {\n    vector<int> res(n);\n    iota(begin(res), end(res), 1);\n    for (int cur = 0, mul = 1; res[cur]; ++mul) {\n        res[cur] = 0;\n        cur = (cur + mul * k) % n;\n    }\n    res.erase(remove(begin(res), end(res), 0), end(res));\n    return res;\n}\n```
['C', 'Python3']