Updated 1337 hacker rulz to version 7. Added `1337.mk` to contain the updated 1337 hacker rulz (v7). We use an optional include of `1337.mk` (or `../1337.mk`, or `../../1337.mk`) to include the 1337 hacker rulz. Changed `make deep_magic` to `make more_magic`. Changed `bin/tar-entry.sh` VERSION from "1.3.7 2024-07-22" to "1.3.8 2024-07-23". Changed `bin/tar-year.sh` VERSION from "1.2.5 2024-07-22" to "1.2.6 2024-07-23". Add `make new_entry` to `YYYY/Makefile` and `template/Makefile.year`. Change `make new_year` to use `sort -n -u`. Made minor debug message fixes to `bin/new-year.sh`. Changed `bin/new-year.sh` VERSION from "1.3 2024-07-23" to "1.3.1 2024-07-23". Improved `bin/add-dir.sh` to update `YYYY/Makefile` with the new entry directory name. Changed `bin/add-dir.sh` VERSION from "1.0 2024-07-21" to "1.1 2024-07-23". Performed `make www` to accomplish the above and to test under macOS.
To build:
make
There is an unobfuscated version of this entry. See Alternate code below.
To use:
./konno N
Try:
./try.sh
# you can also specify numbers to try before the random and preselected ones:
./try.sh 111 222 333 444 555 666 777 888 999
Try running try.sh a number of times as the first part randomly selects ten numbers to try.
Alternate code:
An alternate version of this entry, konno.alt.c, is provided. This alternate code is an unobfuscated version of the winning code.
Alternate build:
make alt
Alternate use:
Use konno.alt as you would konno above.
Judges' remarks:
This entry is a good one-liner to analyze completely.
For extra credit, what are the minimal changes to convert it to 64-bit integers so that it could print 32 lines?
Author's remarks:
Remarks
This program outputs elementary cellular automaton patterns.
Try:
./konno 30
./konno 90
./konno 102
./konno 109
./konno 165
There are 256 (from 0 through 255) possible rules.
Obfuscation
This program uses bit operations. I think
7&O<<!o>>!o+29
is an interesting operation. This isn't equal to
7&O>>29
operation. What is the operation doing?
Limitation
This program assumes that the size of int is 4.