Install Steam
login
|
language
简体中文 (Simplified Chinese)
繁體中文 (Traditional Chinese)
日本語 (Japanese)
한국어 (Korean)
ไทย (Thai)
Български (Bulgarian)
Čeština (Czech)
Dansk (Danish)
Deutsch (German)
Español - España (Spanish - Spain)
Español - Latinoamérica (Spanish - Latin America)
Ελληνικά (Greek)
Français (French)
Italiano (Italian)
Bahasa Indonesia (Indonesian)
Magyar (Hungarian)
Nederlands (Dutch)
Norsk (Norwegian)
Polski (Polish)
Português (Portuguese - Portugal)
Português - Brasil (Portuguese - Brazil)
Română (Romanian)
Русский (Russian)
Suomi (Finnish)
Svenska (Swedish)
Türkçe (Turkish)
Tiếng Việt (Vietnamese)
Українська (Ukrainian)
Report a translation problem
Anywho, a quickie glance seems to indicate a couple of issues... the first being there's no outbox command at all!! Once that's in there, debugging should be a lot easier. =)
-- HUMAN RESOURCE MACHINE PROGRAM --
COPYFROM 23
COPYTO 21
a:
INBOX
COPYTO [23]
JUMPZ b
BUMPUP 23
JUMP a
b:
BUMPUP 23
COPYTO 22
COPYTO 20
c:
INBOX
COPYTO [23]
JUMPZ d
BUMPUP 23
JUMP c
d:
COPYTO 23
COMMENT 0
e:
COPYFROM [20]
JUMPZ f
COPYFROM [23]
JUMPZ j
SUB [20]
JUMPZ k
JUMPN i
COMMENT 3
f:
COPYFROM 22
COPYTO 23
COMMENT 5
g:
h:
COPYFROM [23]
JUMPZ l
OUTBOX
BUMPUP 23
JUMP h
COMMENT 2
i:
j:
COPYFROM 21
COPYTO 23
JUMP g
COMMENT 1
k:
BUMPUP 23
BUMPUP 20
JUMP e
COMMENT 4
l:
DEFINE COMMENT 0
eJyzZmBg6HWtst5gca/5v5HsRkejNbuBQgzt7n9s2t0POmz0f96ZGuK9JDxSaxdIPMP6eWep3+xGELsm
+VZQZcre7B0pdbO2pUasBYk9zWZwYC+3ty+t7XJf2/Ao4k1DaVpB/d7s7TUshYyVJ0vi8vorlmWfK2+u
0Oqxrt4707rafaFd1eSV7OWPt/SWrNhxtVBrV2Ju5s4VWTEbQObdnhfgXT4lIbx+YmYsd++frGsd12qn
d7zuCeraMplh4slFOTNEVyfOiVg7bUHE2u4l11bvXdm/DKTPPqnK2irF3fVHymRf/Ywq67cZe20ZRsEo
GAUYAAAq12cI;
DEFINE COMMENT 1
eJzzYGBg4HN1drruaG+/y+SgwyHDNhcWw36vowbzw1wMU6O2mllnaVrfalhqs6b3iY31jKU2LPNXWJ9c
tMnce8ld9YNzgNoZ7oU5F6iGsBSuCeQoMfWbXM3sqdff6vF50hGPqulVPizzN/pzLHoQ6r3kdvjJRRKR
bQumRe6cdiNicrVEpFbPlCj72adjeZe2xbsvBJmVk/k+8VVmW5F+RtsC9WzJhsU5POXyeW1F0fknSyYU
v+7pLm2ay1l2bfWp0q7FIPVHy6+trq5WbMtt4Cl/0uxefK/VuyyqfX7LrHa9fun2PzPmt3ovAanz6Hvc
VjNJrXPd9PktWjOv1a6ZwVP+eWpX6bcpPOX7JorWcvQtaT/TYzb1WB/L/PIpAcsXzrm0YsfqgOUMo2AU
DHMAAPo9fyI;
DEFINE COMMENT 2
eJzTZ2Bg+OlTaBrhqNcfa39rnaLdih1AIYZy3w0mj0MY8jrj3Bc6JSZuBol5uM9vWRga0wRiF9TvsKqt
mh18qnRL6oqsx23BRXtnepa1LdBrEF29qGXJ1tDO3D0gdTkzSi10Zyi2LZ4tu1Fpzvu9ILEXM9cY+i/e
Yl630t7ecjWL89Y1gj5b1ySEW64uTTuwgiGvb3Fb0ePZLIW8S7pK/6+41VC2Jrdv65pLK/6uvLdx8sL3
ex/M2bBPac6a3QyjYBSMAooBAAN0Uyw;
DEFINE COMMENT 3
eJwzZmBgeG69WFvP0tlph6lzAZe+4Ao/3bJDQGGG+XYhClOdAry73P5k1XsptukG9i/TCFbbDpLbYOFd
xug1vQ7E7ou5ptgWv0JvWXZMyNmSvdksFUcLmyu8y3pL1vTezetavDlNby9IHfMESRXmCZ9Tmib0V9RM
qppeP/E52Kx/E6cr5U+frSo/d43hjfl7bactuOZ/e55e4sI5W1KNpv3Jyp/OkCc/t63o9jyecqFFim1n
F9fNOrv45CL+xeeWys6T3bhyptr2mkmvdzGMglEwCkgGAMO/VL0;
DEFINE COMMENT 4
eJzTY2BgeKy61zZGwyhlhuaKLnEtte0i2nUngMIMMRr29kxGVdZPbKxtzrvY24PEhHSm1/HoXapiMuqv
eG9xrlzRTrAKJH5J+8dhdoMtB4946O0F8cMjWQqnRXIskohcsWNK1NH5PbG5fawJap2VKfeat6UuadfK
WrIVpC65ZUn72obUDrfyndO8S5vmni3pWsxTOn1Nd2nMBpaKJVuVW9bsjmpfsxukdlb77OCb7WqdUzpv
rWMYBaNgFFAFAAA2xEZG;
DEFINE COMMENT 5
eJzTZGBg+GXS5MhucNZzmtbz6Adq9rmqqrcaUlSXtIdp/ZnBbnBy0Rcz0dXBzkpbjrsv2Wrtk7i53Pfo
/J8+hRNtvUNqWj3qcgRdXsep2Yj6G1pc8rEznuwLNJIhJGpydUhU4cSg6IDl52LubWxJUNqyOe3expzM
iLVp2QHLF+dUTc/MCqkBqf1ZXWhqXf3dsrbqXuiu6vf9f6q0doHEBYsfRRyckJvAMApGwSigGQAAKDJE
3w;
DEFINE LABEL 20
eJwzYWBguKu+weSuurOTlKZixA1N7zIR7dw9QGGGG5qfzVwMc43KzPSMCywKTTOs99oq2l3ykbNPjXpk
q5e4wvp7eoe+cwFI7Ub/98a6gSfdXgeWTlkSkroNJMbsebJkZdDJEonI/goQXyurq1QlR69/cc6SrSo5
MRtScnZOk8+LaZLJl2yYWhhRf6hCthmkbnrHFvMzPZ/NDk6osjadyuO5bnphcs6MgMp107V6jKZVTa+a
3LaAeULA8tDOa6v7u2evr5qcuDl91pKt7ssg9o6CUTAKiAcAnVdRqg;
DEFINE LABEL 21
eJxzZGBgOCfa5NgpXmfnJPXHZrHqDqu9xtY2lqZ7bStMDzr46D2KYJZK7egUf99/TnTvzHOi/ctOi11b
/Vn+2mo/XcEVm8wvrQAawXDR+V5zua9s88ogyQbVENHaxyHeZdpBTfl7vK2zTrpVZc61Z8i7b+deLGc/
v+WOfWZ3hOOGCeddqqZrBJ9bKhvuvQRkRkvCltTOOI4SrriI+p7Ywomdcd5LTsTtndmScK+ZISmgcluq
WXpexoakV5kbkp5mG6VMLTyYB9K3vt65YFf1tVrHyuedzhXWMxwruxZXV19aUVx3bfWqxulrQjsDlnv1
ui88OGHvTKvJhRO/TZFt/jFZtPZIf1tRQisD2IxRMApGKgAA6ZJx9Q;
DEFINE LABEL 22
eJyLZWBg6BGzt2eQrrOzkj3oYCrP4RajYZY+Q7Or9K76/BYJoQ37/EUzdzJLPd9+QefH4UvahfuBWhi2
mk2v+276vr/MTG+voUXbAj1L6xkqtvNbZjkYTRJ29l4S7Jy4+YoTRG1QtGzzvLCEVo3g5525gWZTi/zv
bVwTuGZ3aoje3muRr3cJxDzf7h4vuc49/txSkHr3+ELTzriTbm3x58rb4vfOPBE3ez1IvKLmVtDDlsnV
ER1qnVWTuy++m962IHHOufIb83P3nF18acXXNQx5b9ffCgKpDdjlvWTqjqPzZ207t/T+lpgN97do7Zq7
9f3eW9s+H5i00/wwy/73ex0OaO2qPXhvY+1B7yX7DzjPc96/d+aknVsmg/Q/O/lj6uNTAcuVT+88onAm
YPnts01zL19gmNNz2XkeSH72U4Y5Ko9Y5tffSN1Wc1Nr1+Y7RgdUHpkfvvGs7JDIC6MDQi+fbw95MXkl
SO3V56lRl15o9Ux+cWud0MsN+xhGwSgYRAAA8yK0DA;
DEFINE LABEL 23
eJxTZ2Bg8NQ3SuHR0+tvMIq552JoPaND3z7XU/+sJ7vBDqu9xrlG301fG3wy1zJYa7nGUNO60HSRLYvz
XHvZ0FkOe7Pn2nOUJNueK9ex6q+oMD1ZAjSOISvI2kY3cGdGbiBHycqgzO7b4VVHY8IvXQPJ1Xstad/p
k9B6O1y22Sf2XjNI7EN6Qqt69sFTKTmpHQtyZZtl8m81+JVo9TCMglEwCmgOAG40Okw;
The trick is to copy everything on the floor, including the zeros. This will be helpfull to determine the end of the words when sorting.
Then substract the two words, letter by letter until you find the end of a word or a letter that is not the same (different from 0). This will tell you what word to outbox
-- HUMAN RESOURCE MACHINE PROGRAM --
COPYFROM 24
COPYTO 22
a:
INBOX
JUMPZ b
COPYTO [23]
BUMPUP 23
JUMP a
b:
COPYTO [23]
c:
INBOX
JUMPZ d
COPYTO [24]
BUMPUP 24
JUMP c
d:
COPYTO [24]
COPYTO 21
COPYTO 23
COPYFROM 22
COPYTO 24
JUMP f
e:
BUMPUP 23
BUMPUP 24
f:
COPYFROM [23]
JUMPZ g
COPYFROM [24]
JUMPZ j
SUB [23]
JUMPN h
JUMPZ e
g:
COPYFROM 21
COPYTO 22
h:
i:
j:
COPYFROM [22]
JUMPZ k
OUTBOX
BUMPUP 22
JUMP i
k:
DEFINE LABEL 21
eJzzYAAC6dnB+Yqzg9kNEsL3eG9IqvfamXHGtSlfzt677JL2/JYamS2TrwkdnX+P/9xSIZ1rq0+6Pd4C
0iYUHVEvEHOvuTNuSbtVyoqulJzM7u5StU7r6nvNZrXXaktrvct2VR/MY6z8k3W18Ht6XoZ9LmuCd9np
2MnVfTExTX0xO6edju1f1hZ/a93X1B+H32bYn7xU1HauobLt3KY65zMgO7p6P6cwT8jsZpj455jTBMl1
DhNPLto5+cfU/OkrumbPE63lXzy5Wn99SE3Cltw+kHrrQ95lTfsvVXnslW3m2200KWCX95Lzu5Zs9dj7
51jDAd7LW45cu6l8+tadKRem3+K4eu6y7c0tBytvLdm689bklb9vssx3uv550unLmd1fjggCzXAvZhgF
o2CYAwChXY/Q;
DEFINE LABEL 22
eJyrYGBgeMN1zT+XyzprOxvvUgu259uBQgzKfKlRtwUO5k0R1uo5Lda/jFlKbXujVOJmkJwa74+pNwV/
TJ0ivGUyiJ+uUpi8WDWgcrHq50ny6pNXgsS2mlnP+GT++YCZmdp2G5Oj8/caG02yMbnXXGF6q+GLmWTD
KqvZjdMd9fqvOLUtyLP0XgLS8833e3qRf8gqEHt9AMOc9OANEx6ErumNiljTezr24Jxj8bPXg+Tm5j3v
VMl53qmTaTZ1Q3rbgg/pk1fmZEasTcyNWDu5qG6WYHHpFL8S94Wt5bIbD1Us2WpZA/FTT0/V9CP9e2eC
2Mf6tkzeOdlsKojtv5invG+x8zwQe/LC2cFCi+aHgdjv181v2bz22uritW0LPq2tmv5+3fv+Vxte9yza
nNsXt9VoUsR2lvlTd0xfc2knxF3LT77u0T6R27f+2OdJPw+dXFR7cPqaPQczdxYdvbVO9uyGCaEXZjf6
X7LPnXhRq8f/0rXVID2Fd0NWvXgguW7xo+lr4p6cWxrz1HqGzNMtkxMfF07Mv/e+//fNndP+3miaa3tz
8srfNyPWmt+W3fjo0etdYc/X7O5+nbkTZMbNv6VTtn6evHLCy9e7QHzH9xsmbPoiu/HJzz/HGEbBKCAA
AAYG5J0;
DEFINE LABEL 23
eJwTY2BguKv+J+ux6uMti1Wn3wJyGVRVL8mB6OfWmd0x4Wt6fyWv6AKLh1hnrQx6378yaMWO9OCqoyAx
x0q9xIZKnvLmiv5lIL5g8YqufRMj6hnwAPHCLebR+Z9TZufbzwbxj8VPDxAp4vGsn7jBhGvpIy18ekfB
KBgF1AUAxdIr7g;
DEFINE LABEL 24
eJxTYGBgEHOytul32ZDk6vF6l6tH1VEP96Nn+VwvXZvqNPuunH3iw+fWiQ/NzG7dUVKzP/lX+vl2oBYG
QZdKXhB9K780bc8k92IQe339FnPjOuus7EbrGSA+y357+yP7MmM59/6Z0btbct2EXbfWgcS/r9aKW7Bl
Q1LlrcJkBizAbd/k6iP71Drd9lnP6NpzacWEXfc2ztr2eIv6JqUtlatDVv1dybHo70rrGZWrt0wuXls4
8dWGDRPithpNCtj1Y+rxvQfn/Dl4b2Ppkde71hwvO6R8uupo6AXrY9jsGQWjYBQwMAAAOwBmKw;
-edit-
Scratch that. I managed a 34/107 solution (both conditions):
Just recently studied search and compare algorithms (read a book from 80s or 90s), that helped :)
Spoilers ahead!
Description:
I outboxed matching symbols while comparing them. This allowed me to cut down both amount of moves and amount of commands at the same time.
Didn't need to write down size of words as it doesn't matter.
Used string break symbol to find word end (put it down from inbox and on the floor).
Summary:
Also, since this code does not need to reset itself, there is no need to retain the "0" you are initially given for future iterations. Therefore, after copying the "0" to memory 22, I used it as a counter, which saved one line of code and one step.
Here's the code as best I can translate from the iOS app:
I handle the end of words by copying the zero to the floor. During the compare phase I check for zero on the floor (which means I'm done) and check for zero from the inbox (which also means I'm done). After the zero checks I compare the letters. If they are different I jump to the block to either outbox from the inbox or outbox from the floor until I run into a zero.
I saved a few commands and steps by using the existing 0 square as my counter. I reset it between the word copy phase and the compare phase by using the zero I already have in hand at the end of the first word.
I also save a couple steps by skipping the floors zero check on the first loop during the compare because the strings always have at least one letter. I could get 64 steps but would have to go up 29 commands by skipping the first inbox zero check also.
I made it a challenge to get close to the BEST speed solution. I got pretty close, and I know how I could be maybe one or two steps faster, but it would take about 75 more commands. Here is my best speed solution.
-- HUMAN RESOURCE MACHINE PROGRAM --
INBOX
COPYTO 0
INBOX
COPYTO 1
INBOX
COPYTO 2
JUMPZ c
INBOX
COPYTO 3
JUMPZ b
INBOX
COPYTO 4
JUMPZ a
INBOX
COPYTO 5
a:
b:
c:
INBOX
COPYTO 10
SUB 0
JUMPZ d
JUMPN p
JUMP o
d:
INBOX
COPYTO 11
SUB 1
JUMPZ e
JUMPN q
JUMP n
e:
INBOX
COPYTO 12
JUMPZ z
COPYFROM 2
JUMPZ m
SUB 12
JUMPZ f
JUMPN l
JUMP r
f:
INBOX
COPYTO 13
JUMPZ y
COPYFROM 3
JUMPZ k
SUB 13
JUMPZ g
JUMPN j
JUMP s
g:
INBOX
COPYTO 14
JUMPZ x
COPYFROM 4
JUMPZ i
SUB 14
JUMPN h
JUMP t
h:
i:
j:
k:
l:
m:
n:
o:
COPYFROM 0
OUTBOX
COPYFROM 1
OUTBOX
COPYFROM 2
JUMPZ ag
OUTBOX
COPYFROM 3
JUMPZ af
OUTBOX
COPYFROM 4
JUMPZ ae
OUTBOX
JUMP ad
p:
INBOX
COPYTO 11
q:
INBOX
COPYTO 12
JUMPZ w
r:
INBOX
COPYTO 13
JUMPZ v
s:
INBOX
COPYTO 14
JUMPZ u
t:
INBOX
COPYTO 15
u:
v:
w:
x:
y:
z:
COPYFROM 10
OUTBOX
COPYFROM 11
OUTBOX
COPYFROM 12
JUMPZ ac
OUTBOX
COPYFROM 13
JUMPZ ab
OUTBOX
COPYFROM 14
JUMPZ aa
OUTBOX
aa:
ab:
ac:
ad:
ae:
af:
ag:
Praise Jesus Christ I could do this.
Remember my 93/46? I made it much better. I am convinced, that there is NO faster solution than this. I haven't a clue how I could make this even one step faster. THANK JESUS CHRIST!
-- HUMAN RESOURCE MACHINE PROGRAM --
INBOX
COPYTO 0
INBOX
COPYTO 1
INBOX
COPYTO 2
JUMPZ b
INBOX
COPYTO 3
INBOX
COPYTO 4
JUMPZ a
INBOX
COPYTO 5
a:
b:
INBOX
COPYTO 10
SUB 0
JUMPZ c
JUMPN k
COPYFROM 0
OUTBOX
COPYFROM 1
OUTBOX
COPYFROM 2
OUTBOX
COPYFROM 3
OUTBOX
JUMP z
c:
INBOX
COPYTO 11
INBOX
COPYTO 12
JUMPZ l
COPYFROM 2
JUMPZ f
SUB 12
JUMPZ d
JUMPN h
COPYFROM 10
OUTBOX
COPYFROM 11
OUTBOX
COPYFROM 12
OUTBOX
INBOX
OUTBOX
INBOX
JUMPZ y
OUTBOX
JUMP x
d:
INBOX
COPYTO 13
COPYFROM 3
SUB 13
JUMPZ e
JUMPN g
COPYFROM 10
OUTBOX
COPYFROM 11
OUTBOX
COPYFROM 12
OUTBOX
COPYFROM 13
OUTBOX
INBOX
JUMPZ w
OUTBOX
JUMP v
e:
INBOX
COPYTO 14
JUMPZ m
COPYFROM 4
JUMPZ i
SUB 14
JUMPN j
COPYFROM 10
OUTBOX
COPYFROM 11
OUTBOX
COPYFROM 12
OUTBOX
COPYFROM 13
OUTBOX
COPYFROM 14
OUTBOX
JUMP u
f:
COPYFROM 0
OUTBOX
COPYFROM 1
OUTBOX
JUMP t
g:
h:
COPYFROM 0
OUTBOX
COPYFROM 1
OUTBOX
COPYFROM 2
OUTBOX
COPYFROM 3
OUTBOX
COPYFROM 4
JUMPZ s
OUTBOX
JUMP r
i:
COPYFROM 0
OUTBOX
COPYFROM 1
OUTBOX
COPYFROM 2
OUTBOX
COPYFROM 3
OUTBOX
JUMP q
j:
COPYFROM 0
OUTBOX
COPYFROM 1
OUTBOX
COPYFROM 2
OUTBOX
COPYFROM 3
OUTBOX
COPYFROM 4
OUTBOX
JUMP p
k:
COPYFROM 10
OUTBOX
INBOX
OUTBOX
INBOX
OUTBOX
INBOX
OUTBOX
JUMP o
l:
COPYFROM 10
OUTBOX
COPYFROM 11
OUTBOX
JUMP n
m:
COPYFROM 10
OUTBOX
COPYFROM 11
OUTBOX
COPYFROM 12
OUTBOX
COPYFROM 13
OUTBOX
n:
o:
p:
q:
r:
s:
t:
u:
v:
w:
x:
y:
z: