rename statics/euler and sync b93 code with main repo
This commit is contained in:
12
www/statics/euler/Euler_Problem-059_explanation.md
Normal file
12
www/statics/euler/Euler_Problem-059_explanation.md
Normal file
@@ -0,0 +1,12 @@
|
||||
This task had a lot of Befunge specific problems, but first let's look at the solving strategy:
|
||||
- We go through all `26^3` passwords and test look if they generate illegal characters (smaller 32 or bigger 127).
|
||||
- We also see if one of the first twelve characters is a space, assuming the first word is no longer than twelve characters.
|
||||
- The leaves us with around one-hundred viable passwords.
|
||||
- We use the fact that in the English language the letter `e` is pretty common and take the password with the highest count of `e`.
|
||||
- The rest is just decrypting the text and counting the values.
|
||||
|
||||
Now to our Befunge specific problems:
|
||||
- First we need to input the raw data. Our best call is inserting the data directly into the program and then parsing it in the first step into an array.
|
||||
- The next problem is the missing xor operator. To perform an xor operation we need to go through all bits and xor them individually (`a xor b == (a+b) % 2`). This is an extremely pricey operation. And to speed this up we generate an complete 128x128 xor look up-table with all possible xor operations.
|
||||
|
||||
All in all a not really optimal problem for Befunge but still a fun challenge
|
||||
Reference in New Issue
Block a user