> For the complete documentation index, see [llms.txt](https://abhyas-kanaujia.gitbook.io/lb-dsa-notes-and-homework-abhyas/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://abhyas-kanaujia.gitbook.io/lb-dsa-notes-and-homework-abhyas/05-programming-basics-iii/homework/03-number-complement.md).

# 03 Number Complement

{% embed url="<https://leetcode.com/problems/number-complement/submissions/>" %}
LeetCode Question: Number Complement
{% endembed %}

```cpp
int findComplement(int num) {
    int mask = 0;
    while(mask < num) 
        mask = (mask << 1) | 1;

    int ans = num ^ mask;
    return ans;
}
```
