optimized numberjack
This commit is contained in:
+8
-10
@@ -67,16 +67,14 @@ ret
|
||||
; the result is in the @vc cell
|
||||
:score dca 112 @vb ; set vb to 112
|
||||
sub @va @vb ; set vb to va - 112
|
||||
dva @vb @vc ; copy vb value into vc
|
||||
add @c_13 @vc ; add 13 to vc
|
||||
mul @vc @vb ; vb * vc => vb
|
||||
abs @vb @vc ; abs(vb) => vc
|
||||
div @vc @vb ; abs(vb) / vb => vb
|
||||
dec @vb ; vb - 1 => vb
|
||||
mul @c5 @vb ; vb * 5 => vb
|
||||
sub @va @vb ; va - vb => vb
|
||||
dva @c_hund @vc ; store 100 into vc
|
||||
mdf @vb @vc ; store vb mod 100 into vc
|
||||
jge @vb :skscore ; skip adding 10 if >= 112
|
||||
dca 100 @vb ; set vb to 100
|
||||
sub @va @vb ; set vb to va - 100
|
||||
jlt @vb :skscore ; skip adding 10 if < 100
|
||||
dca 10 @vb ; set vb to 10
|
||||
add @vb @va ; add 10 to va value
|
||||
:skscore dca 100 @vc ; set 100 to vc
|
||||
mdf @va @vc ; set vc to va mod 100
|
||||
ret
|
||||
|
||||
; main code part
|
||||
|
||||
Reference in New Issue
Block a user