Leetcode 1318 - Minimum Flips to Make a OR b Equal to c

題目

Problem#

給你三個正整數 a, b, c,問你最少 flip ab 幾次,使得 a or b == c

測資限制#

  • $1 \le a, b, c \le 10^9$

想法#

可以分成兩個 case:

  • c = 1

    • a = 0 && b = 0 時要 flip 一次,a = 1b = 1 或兩個都 = 1 則不用 flip
  • c = 0

    • a = 1 && b = 1 時要 flip 兩次;a = 1 or b = 1 則 flip 一次
  • 時間複雜度: $\mathcal{O}(1)$

  • 空間複雜度: $\mathcal{O}(1)$

AC Code#

賞析#

TODO: 題解