Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

This is really neat!

I made a space-filling curve:

[[[[[[[[[[[[[[[[FR]]FRR]]RRRRRRF]]FFFFFFFRR]]RRRRRRFFFFFFFFF]]FFFFFFFFFFFFFFFFFFFFFFFRR]]RRRRRRFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF]]FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFRR]]

It's not very interesting by itself (it just fills the whole screen with white) but you get cool-looking visualisations of its fractal-like structure by putting "C" at different points of the opening brackets.



That’s cool. Also adding “R”s at various positions leads to interesting effects.

For example:

C[[[RC[[[RC[[[CR[[[C[[C[C[FCR]]FRR]]RRRCRRRF]]FFFRFFFFRR]]RRRRCRRFFFFFFFFF]]FFFRFFFFFFFFFFFFFFFFFFFFRR]]RRRRRRFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF]]FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFFFFFFFFFFCFFFFFFFFFFFFFFFFRR]]CC


Tried seeing how small of a program I could fill the screen with. Came up with this, but feels like there has to be a more elegant solution ^^;

[[[[[[[[[[[[[[[[F]]]]]]]]RRF[[R]R]]]]]]]]]


Naive micro-optimization of your program (namely, things like FF is 1 char shorter than [F]) got that down to 40 chars:

    [[[[[[[[[[[[[[[FF]]]]]]]RRF[RRR]]]]]]]]]
I then found a solution in 37 which uses a slightly different approach (namely, create a pattern that spans the full X and Y output space, then shift it by one step each iteration):

    [[[[[[[[[[[[[[[[FFF]]]]]R]]]F]]]]]]]]


Me too:

]


New command: ;D




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: