f=lambda g,r,n,s:s if n==0 else'\n'.join([s,'='*50 ,g(g,r,n-1,r(s))]);l=lambda q:'\n'.join([''.join([ '*'if x in(5,6,7) else' 'for x in a])for a in [map (sum,zip(*b))for b in zip(*[[z[x:]+z[:x]for z in [ [(2-(1-abs(x))*(1-abs(y)))*w for w in r]for c in[[ [1 if s == '*' else 0 for s in p] for p in q.split ('\n')]]for r in c[y:]+c[:y]]] for x in(-1,0,1)for y in(-1,0,1)])]]); iters=65 ;print(f(f,l,iters,""" ************************************************** * * * *** ** ** *** ** * * * * * * * * ** * * *** * * ** ** * * * * * * * * * *** * *** ** * * * ************************************************** """.strip())) # LIFE # 2013/3/7 # Stephen Hicks #You can fill in any initial position you want (but make sure it is a rectangle (i.e. the same number of characters on every line) and that the first and last characters are not spaces (any non-asterisk will do to signify an empty cell)).
Thursday, March 07, 2013
Obfuscated Life
Subscribe to:
Posts (Atom)