[心得] 我如何(嘗試)學習3-style (二)

看板Rubiks (魔術方塊)作者 (Hunter)時間3年前 (2021/04/20 23:37), 3年前編輯推噓6(6012)
留言18則, 4人參與, 最新討論串1/2 (看更多)
在繼續下個階段前,請先確認你已經完成上一篇的進度: 1. 選定並熟悉一個編碼系統 (沒特別喜好就選Speffz吧,本系列將會以白上綠前的Speffz撰寫) (雖然我自己不是用Speffz,也不是白上綠前XD) 2. 完成letter pairs表格的填空 (Optional,目前還用不到,只是可以早點準備) 建立編碼絕對是最重要的第一件事 如果不用編碼,接下來我們對貼紙位置的描述就會變得十分冗長 例如我們會以“UBL”代表“左後上那塊角,在U面的貼紙” (所以U擺第一個,而BUL和LUB則代表那塊角的其他兩張貼紙) 這種寫法通用性強,但是在學習的時候很影響閱讀流暢度 另外再次強調本系列的目標讀者是已經具備3OP概念的人 (略懂就好,不用很厲害,我自己3OP從來沒有拿手過) 所以會跳過一些基本的東西,或不時拿3OP作對比 如果閱讀困難的話歡迎直接提問或是找其他比較簡單的教學 我是不建議回去練3OP XD -- [將方塊寫成Cycle的前置動作] 在做cycle前,得先決定buffer,也就是從哪張貼紙開始 目前最多高手使用的是UF/UFR,也就是C/C (邊/角) 另外必須提到“Breaking into a new cycle” 這是一個在3OP被視為輔助,但在2-style和3-style卻需要常態使用的技巧 某些3OP使用者因為從來沒用過這個技巧 導致在初期難以理解並轉換至2-style/3-style 簡單來說,“Breaking into a new cycle”就是把多個cycle合併成一個的方法 例如(123)(456) = (1234564) 把第二個cycle的頭複製到最後(456“4”),就可以把兩個cycle寫成一個 多個cycle也適用,像是(12)(345)(67)=(123453676) 無差別地把所有cycle合併成一個會在無意間增加復原的步驟 但每個步驟都會是buffer和另外兩塊零件的三循環 好處是組織與記憶過程,乃至復原操作都較為單純且穩定 刻意不合併,把小cycle獨立出來做,在3-style反而是輔助的特殊技巧 [Cycle演練] 寫得有點太複雜,趕快跳到實例XD https://i.imgur.com/EkQTz1S.jpg
(本系列的編碼參考圖,使用Speffz編碼,白上綠前) (Scramble照慣例也是白上綠前) -- Scramble 1: U R2 D' L2 B2 U2 R2 U B2 U2 L R B' U' F R' F2 L D' R' 首先看角,我們從buffer,也就是C的位置開始 打亂後在C的是藍橘黃的藍,應該回到S 而在S的是綠白橘的綠,應該回到I 依此類推,得到C (buffer) > S > I > T > Q > G > V 而V又會回到C (buffer),完成循環 由於一定是從C開始,所以C可以不寫 遵循同樣的步驟,把邊完成 最終答案如下(因為之後會需要成對記憶和復原,所以編碼寫成兩兩一組) Cycle 1: 角:(SI TQ GV) 邊:(KT GB JS EV QF) 說明: Scramble 1是最簡單無特例的情況,應該要能輕鬆完成 -- Scramble 2: F L2 U' L R' D2 B' R' L F2 R2 D2 F 一樣先看角,從C開始 C (buffer) > I > N > H > T > U 此時發現U會回到C (buffer),完成循環,得到(INHTU) 仔細看就會發現還有其他打亂的角沒編到 這時可以從任何一個還沒編到的角上的任何一張貼紙開始編 例如我們選A,A > P,而P又回到A,完成循環,得到(AP) 使用“Breaking into a new cycle” 把(AP)變成(AP“A”)然後直接加在第一個cycle後面 邊的部分,一樣從C開始 C (buffer) > N > U > H,H回到C (buffer),完成循環,得到(NUH) 接著找還沒被編過的邊,這邊我們選A A > E > P > W > X > M > L > V,V又回到A,完成循環,得到(AEPWXMLV) 使用“Breaking into a new cycle” 把(AEPWXMLV)變成(AEPWXMLV“A”)然後加在第一個cycle後面 合併後的答案如下 Cycle 2: 角:(IN HT UA PA) 邊:(NU HA EP WX ML VA) 說明: Scramble 2的角和邊都用到了“Breaking into a new cycle”的技巧 這邊釐清一點,第一個cycle完成後 第二個cycle必須從任意一個“還沒編過的零件”上的“任意一張貼紙”開始 反過來說,如果角塊的A被編過的話 同一塊零件上的另外兩張貼紙E和R就不能拿來作為第二個cycle的起點 初學者常見的問題是不確定自己是否已經編完所有的零件 或是忘了某塊零件是否被編過 這種情況可以將手指放在已編過的零件上做輔助 -- Scramble 3: D U F2 U B2 U R2 F2 U2 L' U' F D' F' U2 L2 F U R 這題角很簡單,先跳過 邊從C (buffer)開始,得到第一cycle為(BQJ) 第二cycle從D開始,得到(DKOF),改寫為(DKOF“D”)合併到第一個cycle後面 第三循環從W開始,得到(WTR),改寫為(WTR“W”)合併到第二個cycle後面 Cycle 3: 角:(PB AW FA) 邊:(BQ JD KO FD WT RW) 說明: Scramble 3的邊用到了兩次“Breaking into a new cycle” 但操作上還是同一套 從D和W開始純屬個人選擇,只要是還沒編過的邊塊都可以用 (之後可能會慢慢因為各種考量養成自己選擇的偏好與習慣) -- Scramble 4: F' U' F' R D F2 U L' F' U' R2 F L2 U2 D' R2 U' R2 角從C (buffer)開始,結果發現buffer一開始就是正確的 這時要視為第一cycle已完成,得到一個空的cycle ( ) 接下來從還沒編過的貼紙開始下一個cycle,這裡選A,得到(AUWPFHN) 雖然第一個cycle沒東西 但第二個cycle還是要經過“Breaking into a new cycle”才能合併 最後得到(AUWPFHN“A”) 這題邊的處理和角一樣,邊第二循環我們從A開始編,下面直接對答案 Cycle 4: 角:(AU WP FH NA) 邊:(AT KE FG PV BR WA) 說明: Scramble 4的邊和角都是從一開始就在正確的位置上 雖然第一cycle完全沒東西 但第二cycle還是要照著“Breaking into a new cycle”的邏輯去編 -- Scramble 5: F R2 B2 D2 U' B' R' D L2 R U' L2 F2 D R2 D2 角從C (buffer)開始,C (buffer) > F > G > H > A > N 到這邊都很順利,但接著發現N會到M,M到D... 好像一直編不完? 其實第一個cycle在N到M的時候就已經結束了 這是因為雖然我們的buffer是C,但J和M也是buffer這顆角上的貼紙 所以N回到M就視同完成cycle,得到(FGHAN) 只是這個cycle結束後buffer這顆角的方向會是錯的 (本來該回到C,但卻回到M) 這邊我們選P開始編第二cycle,發現P到O,O又到K 注意K和P其實是同一塊角上的不同貼紙,所以O到K就表示第二循環結束,得到(PO) 接著繼續用“Breaking into a new cycle”合併兩個cycle 不同的是原本要把(PO)改寫為(PO“P”)加到第一cycle後面 但這邊O最後會回到K,所以寫成(PO“K”) 合併後得到(FGHANPOK) 這題的邊也設計了一樣的狀況,邊第二循環我們從A開始編,下面直接對答案 Cycle 5: 角:(FG HA NP OK) 邊:(BH PV TK GE SA FQ) 說明: 在編碼時如果出現最後方向不對的cycle 編到最後一定會有其他方向不對的cycle將角度補足 因為正常的方塊不可能存在單邊或單角翻的狀況 -- Scramble 6: R2 L' B' F2 U F R U2 D' B F' L R2 B2 D' L D' B' F R' B' F2 L' R 角從C (buffer)開始,C > F > B > V > H,H會回到J J是buffer上的貼紙,表示已經回到buffer,第一cycle結束,得到(FBVH) 由於最後不是回到C,表示還存在其他方向有問題的cycle 觀察其他角,發現剩下幾個角都是位置正確但方向不對 這種原地翻轉的狀況等同於一個個方向不對的小cycle 以左後上這顆角為例,可以寫成(AR),即A要到R,等於自己逆時針轉120度 再仔細想一下就會發現(AR)、(RE)、(EA)指的是同一件事,怎麼寫就看自己的習慣 依照同樣的方法把剩下兩個原地旋轉的角寫出來,得到(LU)和(WO) 把這幾個cycle合併,得到(FBVHARLUWO) 邊的部分也是從C (buffer)開始,C > R > A > O,O會回到I I是buffer上的貼紙,表示已經回到buffer,第一cycle結束,得到(RAO) 由於最後不是回到C,表示還存在其他方向有問題的cycle 接著開始找第二cycle,從D開始,得到(DPM),M會回到D,表示這個cycle方向正確 接著開始找第三cycle,從U開始,得到(UNWL),L會回到U,表示這個cycle方向也正確 最後找一下,還剩一個原地翻轉的邊,視為一個方向不對的小cycle,得到(XG) 第二和第三cycle以“Breaking into a new cycle”合併 而原地翻轉的邊(XG)直接加在後面,最後得到(RAODPMDUNWLUXG) Cycle 6: 角:(FB VH AR LU WO) 邊:(RA OD PM DU NW LU XG) 說明: 原地翻轉的邊或角,視為一個方向不對的小cycle 這樣的小cycle已經自帶頭尾目標,在合併的時候可以直接加在前一個cycle後面 而不用像一般的cycle一樣,要特別把尾端的目標寫出來才能合併 -- Scramble 7: B2 L2 R2 D B2 D' R2 D2 U' R' D2 L D L' D' L F R U F2 這題和Scramble 4一樣,都是buffer的邊/角一開始就在正確的位置 不同的是零件位置正確,但方向是錯的 這時候不要被翻轉的部分迷惑,直接用Scramble 4的方法開始編 最後所有cycle方向的總和自然會抵消翻轉的buffer 下面直接對答案 Cycle 7: 角:(AI NE) 邊:(AJ KX AD MS FO ET RT) -- Scramble 8: U' R F2 D2 B D2 U B' F' R' D' R2 F' R L 從角開始編,得到(QIHVWRL) 不同的是整理一下會發現(QI HV WR L),編碼的總數是奇數 由於3-style的復原是以三循環的公式處理 每次操作需要一個buffer和兩個目標,共三塊邊(或三塊角)進行三循環 Cycle裡的編碼是奇數個,代表我們無法用純換角(邊)完成所有的角(邊) 這就是盲解的parity,概念在3OP和3-style基本上一模一樣 當編完角發現是奇數個後,我們可以預期邊的cycle編碼也會是奇數個 以下對答案 Cycle 8: 角:(QI HV WR L) 邊:(NE WX LU JQ MR O) 說明: 為了有利於成對記憶和之後的復原,遇到parity時 角的部分可以將最後一個編碼重複一次,以這題來說就是(QI HV WR LL) 看到這種疊字的結尾,就暗示最後要做parity的處理 而邊的部分則是在最後加上B 以這題來說就是(NE WX LU JQ MR OB) (這是處理parity最簡單的其中一種技巧,理由在學習復原的時候會再次講解) -- 以上的scramble都是針對cycle可能遇到的各種狀況刻意挑選的 很多觀念不是特別難,卻可能讓新手卡關 如果無法順利完成某個演練,請先重新來過 找出問題在哪,再進行下一個 等可以輕鬆編完一顆方塊,就可以開始學復原了 另外講一下,這個系列預計的編排順序是 編碼定義,Cycle編寫,基本復原,最後才是記憶 雖然繞一大圈才能實戰,但是學習效果就我自身實驗是不錯 很多人編碼不熟,cycle時不時編錯,記憶硬幹就開始測速 轉一次花一堆時間卻DNF,可能還搞不太清楚自己是編錯、記錯,還是轉錯 盲解一開始沒辦法像速解一樣一次幾十幾百轉,靠肌肉記憶克服一切 在時間精力有限的情況下,計劃性地學習我覺得還是比較有效率 有問題歡迎提問 下一篇應該會隔一段時間了,我還沒想到怎麼寫XD -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.36.203.104 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Rubiks/M.1618933058.A.298.html

04/22 16:56, 3年前 , 1F
太扯了 XD 中文語系的有推薦的編碼嗎 還是其實沒差
04/22 16:56, 1F
這個部分就有點複雜 我推薦至少用拉丁字母(ABC)做編碼符號 拉丁字母被使用在各種歐美甚至一些亞洲語言 使用拉丁字母編碼,不一定只能用英文聯想letter pair 也可以使用羅馬拼音或漢語拼音等形式聯想中文的詞彙 (上一篇已經有舉例) 符號排列部分是沒什麼差 用Speffz可以無痛接軌大部分的英語資源 (雖然現在很多公式表或app都可以讓使用者自己填入自己的符號) 我自己由於輸入法習慣 當初是選用全漢語拼音的letter pairs 字母方面以小鶴雙拼的配置做調整 相較於Speffz使用A到X編碼 我是用去掉A和O以外的24個字母編碼 (A=ㄚ,O/OU=ㄛ/ㄡ,這些都是韻母,相對不好聯想詞彙) 總之編碼系統可以考量的有很多,初學會遲疑很正常 畢竟大家都想一步到位,避免以後砍掉重練 只是如果沒有特別理由的話 我還是覺得學Speffz就好了XD ※ 編輯: Huntermagic (118.168.89.108 臺灣), 04/22/2021 18:44:49

04/23 13:39, 3年前 , 2F
讚讚!! 感謝!!
04/23 13:39, 2F

04/24 17:07, 3年前 , 3F
非常清楚的說明,等哪天有空再來玩玩
04/24 17:07, 3F

04/24 17:10, 3年前 , 4F
樓上都可以做4BLD,應該已經很熟了吧XD
04/24 17:10, 4F

04/27 01:07, , 5F
咦 原地翻邊角全部都用break做掉嗎
04/27 01:07, 5F

04/27 01:08, , 6F
我還以為多少會搭一點純CO EO
04/27 01:08, 6F

04/27 01:11, , 7F
好問題,如果有明顯可以一次處理的我會傾向獨立做掉
04/27 01:11, 7F

04/27 01:11, , 8F
以減少cycle長度
04/27 01:11, 8F

04/27 01:15, , 9F
在前面cycle是奇數字母的情況下,當成break寫進去,
04/27 01:15, 9F

04/27 01:15, , 10F
有時候會比翻轉的公式好做我覺得
04/27 01:15, 10F
例如邊循環(Speffz配置) (ABD) (LJ) (WS) 方案1:(WS)翻邊編在最後 = (AB DL JL WS) = 三個三循環公式 + 一個WS翻邊 方案2::(WS)翻邊編在中間 = (AB DW SL JL) = 四個三循環公式 那就是看三循環和翻邊公式哪個順手 不過多塊零件原地翻轉的話 用3OP習慣的EO CO直接做掉是真的比較省事 ※ 編輯: Huntermagic (61.219.218.127 臺灣), 04/27/2021 01:29:12

04/27 01:28, , 11F
反正就以順手為主XD 當然理論上cycle解完之後接一個公式
04/27 01:28, 11F

04/27 01:29, , 12F
處理掉所有翻轉的步數應該會最少
04/27 01:29, 12F

04/27 01:32, , 13F
翻邊跟三循環就看情況了 不過實戰應該是直接靠經驗決定
04/27 01:32, 13F

04/27 01:33, , 14F
要走哪一套 不然光考慮塞哪裡多一秒就抵掉那個alg了
04/27 01:33, 14F

04/27 01:35, , 15F
沒錯,我自己找第二循環是有一定的順序,就看找到時
04/27 01:35, 15F

04/27 01:36, , 16F
落在cycle的哪裡,實在不會特別去設計編寫的位置
04/27 01:36, 16F
是說這個公式 U' S R' F' R S' R' F R U' M' U2 M 比我原本用的MU翻邊還快,也是我後來新學到的 第一眼完全想象不到它好轉XD ※ 編輯: Huntermagic (61.219.218.127 臺灣), 04/27/2021 01:39:02

04/27 08:08, , 17F
這我轉不動 不會用S' XD
04/27 08:08, 17F

04/27 12:59, , 18F
近代盲解最大的推進之一就是大量使用EMS公式XD
04/27 12:59, 18F
文章代碼(AID): #1WVlL2AO (Rubiks)
文章代碼(AID): #1WVlL2AO (Rubiks)