b003. 運算式 + - 符號設定問題
b003. 運算式 + - 符號設定問題
題 目 :
給 定 一 個 運 算 式:± 1 ± 2 ± 3 ± ... ± n = k,你 必 須 決 定 每 個 數 字 前 的 運 算 符 號是 + 或 - 以 找 出 最 小 的 n 值,使 得 此 運 算 式 等 於 k。
例 如:若 k = 12,則 運 算 式 將 會 是:
- 1 + 2 + 3 + 4 + 5 + 6 - 7 = 12
而 此 時 最 小 的 n 值 是 7
0 <= |k| <= 1000000000
solve :
假 設 $S$ = $\sum_{n=1}^m n$ 且 $S$ 是 大 於 等 於 $k$ 的 最 小 整 數,接 下 來 想 想 看 如 果 改 變 其 中 一 個 數 $x$ 的 正 負 號 會 發 生 什 麼 事,$S$ 裡 原 本 的 $x$ 不 見 了 取 而 代 之 的 是 再 多 一 個 $-x$,$S$ 會 被 扣 掉 $2x$,知 道 這 個 條 件 後,只 要 $S - k$ 是 偶 數,那 麼 都 可 以 扣 掉 任 意 $x$ 來 讓 $S$ 變 成 $k$。
code:
code:
留言
張貼留言