看板 puzzle 關於我們 聯絡資訊
puzzleUp風味題 Vol.18 等待真puzzleUp出題中 【暫存器指令】 你有一個CPU 具有兩個暫存器R1,R2,初始值為1,2 該CPU有三種指令: op A: 令R1的值為R1+R2,同時令R2的值為R1-R2(取絕對值) op B: 若R1的值為偶數,則令其為R1/2,否則,令其為R1*3+1 op C: 將R1與R2的值互換 你要用最簡短的指令使R1成為99 問該指令為? 例:若要使R1成為39,指令為ABACBA OP R1 R2 1 2 A 3 1 B 10 1 A 11 9 C 9 11 B 28 11 A 39 17 寫了一個模擬器,歡迎大家使用 https://buffalobill.idv.tw/Public/Misc/registerOp/ 感覺只要調整指令跟暫存器數目 題目可以千變萬化~ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 60.251.148.121 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/puzzle/M.1604044615.A.1BE.html ※ 編輯: buffalobill (60.251.148.121 臺灣), 10/30/2020 15:58:10
LPH66: 不管怎樣先湊一組出來: ACBBCBBACBCBBBBACBBBBCBA 10/31 15:03
LPH66: .....可惡, 程式跑出結果來之後才發現盲點 XD 10/31 15:25
LPH66: 不過果然這條路線是對的, 很多中間過程都很恰巧是要的型式 10/31 15:27
LPH66: 就先不破梗給其他人挑戰好了 10/31 15:27
EIORU: 不小心的 ABABABBBBAABBA 11/02 12:39
EIORU: BACBABABA 99/65 11/02 13:07
buffalobill: BACBABABA 正解 11/02 15:24
buffalobill: 不用C的話最短是ABABABBBBBBBA跟ABABBBBBBBABA 11/02 15:27
DreamYeh: 這題好棒! 11/03 00:13
LPH66: 是說, 因為 CA = A 和 CC = nop, C 後面只有 B 有意義 11/03 04:36
LPH66: 所以是可以利用 B 和 CB 只有作用參數不同來湊 11/03 04:37
LPH66: 那我的盲點就是選的起始組沒注意到是可以 BABA 結尾的 XD 11/03 04:38