Minkowski-snøfnugg, også kjent som kvadratisk Koch-snøfnugg (eller øy), er en fraktal-øy satt sammen av fire Minkowski-kurver.
Minkowski-kurven kan konstrueres iterativt (eller rekursivt) fra et rett linjestykke. For hver iterasjon byttes hvert linjestykke ut med åtte mindre linjestykker med lengde en fjerdedel av det opprinnelige linjestykket, satt sammen slik som vist i figuren under:
Minkowski-snøfnugget består av fire slike kurver satt sammen i en "firkant", og kan konstrueres fra et kvadrat som vi nå kaller nivå-0 Minkowski-snøfnugg. Gjennomfører man transformasjonen beskrevet over på hvert linjestykke i kvadratet får man nivå-1 snøfnugget, og gjør man det igjen for alle linjestykkene i nivå-1 snøfnugget får man nivå-2 Minkowski-snøfnugget osv.
Snøfnuggene av nivå-0, 1 og 2:
Oppgaven her er å konstruere et nivå-3 Minkowski-snøfnugg som oppfyller følgende:
Output fra koden skal være koordinatene til snøfnuggets linjestykkers endepunkter, skrevet ut på følgende måte:
Snøfnugget som skal konstrueres er vist i figuren under, og første punkt er markert med rød sirkel:
Starten på outputet er som følger:
(21, 21) (22, 21) (22, 22) (23, 22) (23, 21) ...
Det er ikke tillatt med brukerinput via f.eks. input() eller raw_input() i løsningen. Merk: kodegolfen bruker python2. I tillegg er det noe funksjonalitet som ikke støttes av kommandotolken. Dersom du er helt sikker på at du har en fungerende løsning, men likevel ikke får den til å kjøre på nettsiden, så kan det hende at du har brukt funksjonalitet som ikke er støttet. Så selv om vi anbefaler at du utvikler koden i ditt lokale miljø så kan det være greit å teste på nettsiden også, spesielt hvis du planlegger å bruke litt "eksotiske" funksjoner.
input()
raw_input()
[[ errors ]]
Output: [[ output ]]