
Cycle optimized solution for Disk 1 Puzzle 7: The Dopplegänger for leaderboard (50~69 cycles).
Table of Contents
Dopplegänger Puzzle Solution
Solution for 60~69 Cycles
The idea is to use more lines of code to reduce the processing time.
Hints
- We need to store two input values in order to compare them. Solutions in other guides show how to pass a value between registers before storing the next input. That’s not the only way.
- There are more than one register.
- We still need some sort of loop, but a longer one that alternates between two registers.
Solution
loop:
reg = input;
check reg = int;
jump if true: print;
int = input;
check reg = int;
jump if false: loop;
print:
output = int;
jump to: loop;
Note that formatting may have inserted extra spaces. This should yield very close to 70 cycles. With a little bit of luck with different input data, or some other tricks (hint:the first input), you can get under 70 cycles more often.
Hint for 50~59 Cycles
You would still be trading smaller code size for faster execution speed, just taking that concept to the extreme, at least that’s what I have come up with for now.
- I used many lines of code.
- It can be considered a hack job.
- It’s accurate only probabilistically, but at a very high rate that passes the game checks.
- The more lines of code, the less likely it is to make a mistake.
Be the first to comment