From c34927bd881d91273c62da11860d45f619a611cf Mon Sep 17 00:00:00 2001 From: Matej Focko Date: Thu, 22 Aug 2024 10:49:47 +0200 Subject: [PATCH] =?UTF-8?q?go:=20add=20=C2=AB476.=20Number=20Complement?= =?UTF-8?q?=C2=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Matej Focko --- go/number-complement.go | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 go/number-complement.go diff --git a/go/number-complement.go b/go/number-complement.go new file mode 100644 index 0000000..fe46c97 --- /dev/null +++ b/go/number-complement.go @@ -0,0 +1,11 @@ +package main + +func findComplement(num int) int { + mask := 0 + for tmp := num; tmp != 0; tmp >>= 1 { + mask <<= 1 + mask |= 1 + } + + return num ^ mask +}