Sort colors with some magic, then select a point in the middle, fill it, select a random point with abs(dx)+abs(dy)<50, fill that, repeat, if stuck for 1000 iterations select a random unfilled point. Given my
non-existent optimisation skills took about 2 hours.

Date | |
---|---|

Colors | 16,777,216 |

Pixels | 16,777,216 |

Dimensions | 4,096 × 4,096 |

Bytes | 46,890,576 |