Bu zorluk, bu fantastik animasyon şemasından esinlenmiştir (sohbete göndermedeki kusur sayesinde).
Bir giriş verildiğinde n, tüm ana faktörlerini belirtildiği gibi iç içe çokgenler olarak çizin.
Örneğin, bu sayı göz önüne alındığında, 357 = 17x7x3bir üçgende 3 nokta, bir heptagondaki bu üçgenlerin 7 versiyonu ve bu hepgononların 17 versiyonunu 17 gonda düzenlersiniz. Kısacası, iç içe çokgenler dıştaki en büyük ana faktörden içteki en küçük düzeye doğru gider. Çünkü 357cevabınız biraz buna benzemeli (renkli ya da renkli):
Her asalın her çokgeni >= 3diyagramın etrafında döndürülmemelidir.
Tek istisna 2özellikle garip güçler için en önemli olanı 2. 376 = 47x2x2x2Aşağıdaki örnekte görebileceğiniz gibi, 8s döner ve 2s satırları tek değildir , ancak 4s kare için dikey yığınlardır . 2Kareler halinde düzenlenmiş güçlerinin bile bu şekilde döndürülmeleri gerekmez.
Aslında, 448 = 7x2x2x2x2x2x2bir 64s heptagonuna benzeyen bir şemaya sahiptir ve 64bir kare kareler karesi şeklinde düzenlenmiştir, fakat dönüşsüzdür.
İki örnek daha 440 = 11x5x2x2x2ve 432 = 3x3x3x2x2x2x2. 440Tuhaf bir güçle 2'nin döndüğünü 8, ancak 432eşit güçle 2s'ini döndürmediğini görüyoruz 16.
Sonunda, 10 = 5x2Python ve turtlemodülü ile alay ettiğim renk olmadan , minimal bir örnek .
Meydan okuma
- Bir giriş
nverildiğinde1 <= n <= 10000, iç içe geçmiş faktör çokgenlerinin görüntüsünü çıkar. - Kurallar:
- Görüntü, dışta (en büyük asal çarpan) yanları olan bir çokgenden, içte en küçük asal çarpana kadar iç içe çokgen noktalardan oluşur.
- Faktör 2 için, 2'nin güçlerinin bir çizgi, sonra bir kare, sonra bir kare çizgi gibi istiflenmesi gerekir. 2 güçleri bile döndürülmemelidir. 2'lik tek güçler, kendi poligonlarının etrafında döndürülmeli ve dönmeden önce dikey olarak istiflenmelidir.
- İstediğiniz gibi görüntüyü yönlendirebilirsiniz (tercih etsem de), ancak iç içe geçmiş her çokgen, 2'nin tek güçleri hariç, diğer çokgenlerle aynı yöne bakmalıdır.
- Görüntü boyutu ve nokta boyutu için iki seçeneğiniz vardır:
- Görüntü boyutu statiktir ve nokta boyutu
narttıkça (animasyondaki gibi) azalır . - Nokta boyutu statiktir ve resim boyutu arttıkça büyür
n.
- Görüntü boyutu statiktir ve nokta boyutu
- İlk üç poligon katmanı, komşu poligonlardan (yani
n=10000dokunmaz ) ayırt edilebilir olmalıdır, ancak görüntülerin ve etrafındaki görüntülerin büyüklüğü göz önüne alındığında , katlar dokunmaya başladıysa sorun olmaz. Yapmasalardı tercih ederdim, ancak Stack Exchange'e yüklenebilecek bir görüntüye uyması kaçınılmaz olabilir. - Renk isteğe bağlıdır.
- Noktaların şekli size kalmış. Kareler diliniz için daha iyiyse, bunları kullanın.
- Bonus yok, ama birisinin orijinal yazıdaki gibi diyagramları canlandırıp renklendirdiğini görmek istiyorum.
Conor O'Brien, EasterlyIrk, Martin Ender, Kritixi Lithos, Mego, DJ McMayhem ve El'endia Starman'a bu soruyu yazmadaki yardımları için teşekkürler.
Bu kod golf, yani en kısa kod kazanır. İyi şanslar ve iyi golf!







n = n //= igerekiyordun//= i?