# frozen_string_literal: true # https://leetcode.com/problems/number-complement/ # @param {Integer} num # @return {Integer} def find_complement(num) bits = ((::Math.log(num) / ::Math.log(2)) + 1).floor (0...bits).each { |i| num = (num ^ (1 << i)) } num end