精華區beta Marginalman 關於我們 聯絡資訊
※ 引述《JIWP (神楽めあ的錢包)》之銘言: : 1404. Number of Steps to Reduce a Number in Binary Representation to One : 有一個二進位的整數以字串形式表示 : 可以做以下2種處理 : 1.如果現在的數字是偶數那除以2 : 2.如果現在的數字是奇數那+1 : 請問要做幾次操作才可以把這個數字變成1? 你們都會數學 剩我用字串暴力拆了 public int NumSteps(string s) { var sb = new StringBuilder(s); var steps = 0; while (sb.Length > 1) { var n = sb.Length-1; if (sb[n] == '0') { sb.Length--; } else { while (n >= 0 && sb[n] == '1') { sb[n] = '0'; n--; } if (n >= 0) { sb[n] = '1'; } else { sb.Insert(0, '1'); } } steps++; } return steps; } -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.230.52.80 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1717003480.A.7CC.html
sustainer123: 沒R 我就模擬 我感覺有一行漂亮的數學解 05/30 01:25
sustainer123: 但我想不到 05/30 01:25