Skip to main content
added 467 characters in body
Source Link
xnor
  • 149.7k
  • 26
  • 287
  • 676

Python 3, 86 bytes

r=[] for l in[[55]*3,[0,89,34]]*99:l+=(len(r)%11%-2|1)*l.pop(0),;r+=(*l,), print({*r}) 

Try it online!

Outputs the golden-ratio vertices everyone is using, scaled up by 55, from the approximation of \$ \phi \approx 89/55\$ suggested by alephalpha.

The idea is to take the two vertices \$(1,1,1)\$ and \$(0,\phi,1/\phi)\$ and "randomly" negate entries and take cyclic permutations to reach all 20 vertices, then de-duplicate using sets. Each loop alternates between the two vertices, mutating it by moving the first entry to the back, and possibly negating that entry. Whether to negate is given by i%11%2 on the i'th loop, which happens to hit all 20 vertices in not too many loops. The index i is actually tracked by the length of the list l of vertices we've generated so far.


Python 3, 82 bytes

*l,k=0,34,89,718230 while k:k-175or(l:=[55]*3);l+=l.pop(0)*(-1)**k,;k>>=1;print(l) 

Try it online!

To be golfed...

Python 3, 86 bytes

r=[] for l in[[55]*3,[0,89,34]]*99:l+=(len(r)%11%-2|1)*l.pop(0),;r+=(*l,), print({*r}) 

Try it online!

Outputs the golden-ratio vertices everyone is using, scaled up by 55, from the approximation of \$ \phi \approx 89/55\$ suggested by alephalpha.

The idea is to take the two vertices \$(1,1,1)\$ and \$(0,\phi,1/\phi)\$ and "randomly" negate entries and take cyclic permutations to reach all 20 vertices, then de-duplicate using sets. Each loop alternates between the two vertices, mutating it by moving the first entry to the back, and possibly negating that entry. Whether to negate is given by i%11%2 on the i'th loop, which happens to hit all 20 vertices in not too many loops. The index i is actually tracked by the length of the list l of vertices we've generated so far.

Python 3, 86 bytes

r=[] for l in[[55]*3,[0,89,34]]*99:l+=(len(r)%11%-2|1)*l.pop(0),;r+=(*l,), print({*r}) 

Try it online!

Outputs the golden-ratio vertices everyone is using, scaled up by 55, from the approximation of \$ \phi \approx 89/55\$ suggested by alephalpha.

The idea is to take the two vertices \$(1,1,1)\$ and \$(0,\phi,1/\phi)\$ and "randomly" negate entries and take cyclic permutations to reach all 20 vertices, then de-duplicate using sets. Each loop alternates between the two vertices, mutating it by moving the first entry to the back, and possibly negating that entry. Whether to negate is given by i%11%2 on the i'th loop, which happens to hit all 20 vertices in not too many loops. The index i is actually tracked by the length of the list l of vertices we've generated so far.


Python 3, 82 bytes

*l,k=0,34,89,718230 while k:k-175or(l:=[55]*3);l+=l.pop(0)*(-1)**k,;k>>=1;print(l) 

Try it online!

To be golfed...

Source Link
xnor
  • 149.7k
  • 26
  • 287
  • 676

Python 3, 86 bytes

r=[] for l in[[55]*3,[0,89,34]]*99:l+=(len(r)%11%-2|1)*l.pop(0),;r+=(*l,), print({*r}) 

Try it online!

Outputs the golden-ratio vertices everyone is using, scaled up by 55, from the approximation of \$ \phi \approx 89/55\$ suggested by alephalpha.

The idea is to take the two vertices \$(1,1,1)\$ and \$(0,\phi,1/\phi)\$ and "randomly" negate entries and take cyclic permutations to reach all 20 vertices, then de-duplicate using sets. Each loop alternates between the two vertices, mutating it by moving the first entry to the back, and possibly negating that entry. Whether to negate is given by i%11%2 on the i'th loop, which happens to hit all 20 vertices in not too many loops. The index i is actually tracked by the length of the list l of vertices we've generated so far.