# A=B 是一款只有一條指令的編碼遊戲
A=B Steam 遊戲連結
2022.4.10 更新 第六章
2022.4.8 更新 第五章
2022.4.4 更新 第四章
2022.4.2 更新 第三章
2022.4.1 更新 第一、二章
# 第一章 A=B
指令說明
string1 = string2
將 string1
替換成 string2
# 1-1 A to B
給一個包含 a
、 b
、 c
的字串,將字串中的 a
改成 b
a = b
# 1-2 Uppercase
給一個包含 a
、 b
、 c
的字串,將字串中的字母改成大寫
a = A
b = B
c = C
# 1-3 SingLeton
給一個包含 a
、 b
、 c
的字串,將所有連續字母改成單個字母
aa = a
bb = b
cc = c
# 1-4 SingLeton 2
給一個包含 a
、 b
、 c
的字串,將所有連續的 a
刪除
aaa = aa
aa =
# 1-5 Sort
給一個包含 a
、 b
、 c
的字串,以字母表順序進行排序
ba = ab
ca = ac
cb = bc
# 1-6 Compare
給一個包含 a
、 b
的字串,輸出最多的字母
ab =
ba =
aa = a
bb = b
# 第二章 Keyword
指令說明
string1 = (return)string2
若存在 string1
,則輸出 string2
# 2-1 Hello World
給一個包含 a
、 b
、 c
的字串,輸出 helloworld
= (return)helloworld
# 2-2 AAA
給一個包含 a
、 b
、 c
的字串,如果包含至少 3 個 a
輸出 true
,否則輸出 false
b =
c =
aaa = (return)true
= (return)false
# 2-3 Exactly Three
給一個包含 a
、 b
、 c
的字串,如果字串長度為 3 輸出 true
,否則輸出 false
b = a
c = a
aaaa = (return)false
aaa = (return)true
= (return)false
# 2-4 Remainder
給一個包含 a
、 b
、 c
的字串,輸出字串長度除以 3 的餘數
b = a
c = a
aaaa = a
aaa = 0
aa = 2
a = 1
# 2-5 Odd
給一個包含 a
、 b
、 c
的字串,如果每個字母的數量為 0 或奇數輸出 true
,否則輸出 false
ba = ab
cb = bc
ca = ac
aaa = a
bbb = b
ccc = c
aa = (return)false
bb = (return)false
cc = (return)false
= (return)true
# 2-6 The Only
給一個包含 a
、 b
、 c
的字串,如果只有一個字母是單獨存在的輸出 true
,否則輸出 false
aaa = aa
bbb = bb
ccc = cc
aa = '
bb = '
cc = '
a = 0
b = 0
c = 0
' =
00 = (return)false
0 = (return)true
= (return)false
# 2-7 Ascend
給一個包含 a
、 b
、 c
的字串,如果數量 c > b > a
輸出 true
,否則輸出 false
解題思路
前三行先排序
接著將 abc
為一組消去,直到無法消除為止
這時候應該要只剩下 b
與 c
,而 bc
又會轉成 -
,所以剩下 -c
就是 true
,其餘情況皆為 false
ca = ac
ba = ab
cb = bc
bc = -
b- = -b
a- =
-c = (return)true
= (return)false
# 2-8 Most
給一個包含 a
、 b
、 c
的字串,輸出最多的字母
cb = bc
ca = ac
ba = ab
ab = -
-b = b-
-c =
bc =
ac =
a = (return)a
b = (return)b
c = (return)c
# 2-9 Least
給一個包含 a
、 b
、 c
的字串,輸出最少的字母
cb = bc
ca = ac
ba = ab
ab = -
-b = b-
-c =
- = (return)c
ac = (return)b
bc = (return)a
# 第三章 Start and End
指令說明
(start)string1 = string2
、(end)string1 = string2
若string1
在字串的開頭、結尾,將string1
替換成string2
string1 = (start)string2
、string1 = (end)string2
找到最左方的string1
,將之刪除,並在字串的開頭、結尾加入string2
# 3-1 Remove
給一個包含 a
、 b
、 c
的字串,將所有在字串開頭與結尾的 a
刪除
(start)a=
(end)a=
# 3-2 Spin
給一個包含 a
、 b
、 c
的字串,將所有在 a
前方的字母移到字串最後
(start)b = (end)b
(start)c = (end)c
# 3-3 A to B 2
給一個包含 a
、 b
、 c
的字串,將所有在開頭與結尾的 a
替換成 b
(start)a = (end)-
- = (start)b
(end)a = (start)+
+ = (end)b
# 3-4 Swap
給一個包含 a
、 b
、 c
的字串,將所有在開頭的 a
與所有在結尾的 b
交換
(start)a = +
+a = a+
(end)b = (start)b
+ = (end)a
# 3-5 Match
給一個包含 a
、 b
、 c
的字串,若字串開頭與結尾相同輸出 true
,否則輸出 false
a+ = (return)true
b- = (return)true
c. = (return)true
(start)a = (end)+
(start)b = (end)-
(start)c = (end).
= (return)false
# 3-6 Most 2
給一個包含 a
、 b
、 c
的字串,保留並輸出最多的字母,刪除其餘字母
ba = ab
ca = ac
cb = bc
bc = (start)x
xa = (start)y
ac = (start)y
ab = (start)y
x = y
yc = cc
ya = aa
yb = bb
# 3-7 Palindrome
給一個包含 a
、 b
、 c
的字串,若字串是回文輸出 true
,否則輸出 false
a+A- =
b+B- =
c+C- =
(start)a = (end)+A-
(start)b = (end)+B-
(start)c = (end)+C-
-+ = (return)false
= (return)true
# 第四章 Once Upon A Time
指令說明
(once)string1 = string2
執行過一次就不再執行
# 4-1 Hello 2
給一個包含 a
、 b
、 c
的字串,將 hello
加到字串的開頭
(once)=(start)hello
# 4-2 Remove 2
給一個包含 a
、 b
、 c
的字串,將最先出現的三個 a
移除
(once)a =
(once)a =
(once)a =
# 4-3 Cut
給一個包含 a
、 b
、 c
的字串,移除前三個字母
(once) = ---
-a =
-b =
-c =
# 4-4 Remove 3
給一個包含 a
、 b
、 c
的字串,將最後出現的三個 a
移除
(once) = (end)---
a- =
b- = -b
c- = -c
- =
# 4-5 Reverse
給一個包含 a
、 b
、 c
的字串,將字串頭尾兩個字母交換
(once) = (start)-
-a = (end)+a
-b = (end)+b
-c = (end)+c
a+ = (start)a
b+ = (start)b
c+ = (start)c
# 4-6 Reverse 2
給一個包含 a
、 b
、 c
的字串,倒轉字串
(once) = (start).......
.a = (start)a
.b = (start)b
.c = (start)c
. =
# 4-7 Cut 2
給一個包含 a
、 b
、 c
的字串,移除第三個字母
(once) = (start)-..
.a = (start)a
.b = (start)b
.c = (start)c
-a = (start)..
-b = (start)..
-c = (start)..
# 4-8 Clone
給一個包含 a
、 b
、 c
的字串,複製前三個字母,將之加至字串最後
(once) = (start)...
+a = (start)a
+b = (start)b
+c = (start)c
.a = (end)+aa
.b = (end)+bb
.c = (end)+cc
(once) = (start)+++
# 4-9 A to B 3
給一個包含 a
、 b
、 c
的字串,將 a
替換成 b
、將 b
替換成 a
(once) = .
.a = b.
.b = a.
.c = c.
. =
# 4-10 Half
給一個包含 a
、 b
、 c
的字串,移除奇數位的字母
(once) = .
..a = a.
..b = b.
..c = c.
.a = ..
.b = ..
.c = ..
. =
# 4-11 Clone 2
給一個包含 a
、 b
、 c
的字串,複製字串
(once) = .
A = (end)+a
B = (end)+b
C = (end)+c
.a = aA.
.b = bB.
.c = cC.
. =
+ =
# 4-12 To B or not to B
給一個包含 a
、 b
、 c
的字串,若 b
存在,將 a
替換成 b
,否則將 a
替換成 c
(once)b = b-
(once)- = (start)-
-a = b-
-b = b-
-c = c-
- =
a = c
# 4-13 Center
給一個包含 a
、 b
、 c
的字串,輸出最中間的字母
(once) = -
(end)-a = a
(end)-b = b
(end)-c = c
-a = (end)-
-b = (end)-
-c = (end)-
a- = (start)-
b- = (start)-
c- = (start)-
# 4-14 Center 2
給一個包含 a
、 b
、 c
的字串,刪除最中間的字母
(once) = -
(once) = (end).
-a. =
-b. =
-c. =
a.+ = .a
b.+ = .b
c.+ = .c
a+ = +a
b+ = +b
c+ = +c
t = (end)+
-a = ta-
-b = tb-
-c = tc-
# 4-15 Expansion
給一個包含 a
、 b
、 c
的字串,將第 i
位字母增值 i
倍
(once) = -
-a = a-x
-b = b-x
-c = c-x
+a- = aa-x
+b- = bb-x
+c- = cc-x
+a = a+
+b = b+
+c = c+
-x = +-
+ =
- =
# 4-16 Merge
給兩個包含 a
、 b
的字串 (以 ,
連接),將兩字串合併
(once) = |
|, =
- = (end)y
ay = (start)a
by = (start)b
ax = (start)a
bx = (start)b
, = x,-
# 第五章 Math
# 5-1 Count
給一個二進位數,求此數量的 a
(once) = (end)+
(start)0 =
(start)+ =
0- = -1
1- = 0
+ = -+a
# 5-2 A+1
給一個二進位數,求此數 + 1
(once) = (end)+
(start)+ = 1
0+ = 1
1+ = +0
# 5-3 A+B
給兩個二進位數,求兩數相加
+1 = -x+
+0 = -+
x- = -xx
- =
1x = x0
0x = 1
x = 1
+ =
# 5-4 A-B
給兩個二進位數,求兩數相減
-1 = Tx-
-0 = T-
xT = Txx
T =
1x = 0
0x = x1
- =
(start)0 =
# 5-5 A*B
給兩個二進位數,求兩數相乘
參考 : A=B 全關卡解析 - 攻略
(once) = (start)P
< = (start)Q
Q1 = 1Q
Qx = &xQ
Q0 = 0Q
x& = &x
1& = &0
0& = 1
& = 1
(end)*1 =
> = (end)^
1^ = 0
0^ = ^1
*0 = *
P1 = 1xP
P0 = 0P
P* = <*>
Q* = <*>
x =
Q =
P =
# 5-6 A/B
給兩個二進位數,求兩數相除
參考 : A=B 全關卡解析 - 攻略
(once) = /*
/0 = /
0- = -1
1- = 0
< = (start)+
> = (end)+
* = (end)^
+//+^ = ,0
//+ = //
/+ = -/>
/^ = /<*
^ = -^+
(once) = 0
0+ = 1
1+ = +0
+ = 1
# 第六章 Aftermath
指令說明
不能使用任何關鍵字
# 6-1 Hello Again
給一個包含 a
、 b
、 c
的字串,輸出 helloworld
b = a
c = a
aa = a
a = helloworld
# 6-2 Palindrome 2
給一個包含 a
、 b
、 c
的字串,若字串是回文輸出 true
,否則輸出 false
參考 : A=B 全關卡解析 - 攻略
aa = ononnoa
ab = ononnob
ac = ononnoc
oa = oononno
b = oonnoonnno
c = ooonnnooonnnno
noono = onnoo
nooonno = oonnnoo
noooonnno = ooonnnnoo
ononno = true
oonnoonnno = true
ooonnnooonnnno = true
trueo = o
on =
no = false
# 6-3 To B or not to B 2
給一個包含 a
、 b
、 c
的字串,若 b
存在,將 a
替換成 b
,否則將 a
替換成 c
參考 : A=B 全關卡解析 - 攻略
%*cccccccc = b
cccccccc*@ = b
a = cccccccc*cccccccc
%c = c%
bcccccccc = b%
ccccccccb = @b
c@ = @c
* = c
cccccccc =