genuary2026/07/genuary07.py
2026-01-12 18:44:36 +11:00

35 lines
758 B
Python
Executable File

#!/usr/bin/env python
r0 = 2
print('<svg width="600" height="600" xmlns="http://www.w3.org/2000/svg">')
cache = {}
def bool_r(x, y):
if x in cache:
if y in cache[x]:
return cache[x][y]
else:
cache[x] = {}
if x < 1:
cache[x][y] = (y % 2 == 1)
else:
if y < 1:
cache[x][y] = (x % 2 == 1)
else:
a = bool_r(x - 1, y)
b = bool_r(x, y - 1)
cache[x][y] = (a and not b) or (b and not a)
return cache[x][y]
for x in range(128):
for y in range(128):
cx = r0 + x * r0 * 2
cy = r0 + y * r0 * 2
if bool_r(x, y):
print(f'<circle cx="{cx}" cy="{cy}" r="{r0}" style="fill:blue;"></circle>')
print("</svg>")