Giriş
Verilen kurallara göre ünlü pangramın giden spiralini çıkarmak için bir program yazın.
Meydan okuma
Bir pangram kez en az belirli bir alfabenin her harfini kullanarak bir cümledir. En ünlü pangramlardan biri, Windows yazı tipi görüntüleyicisinde, yani " Hızlı kahverengi tilki tembel köpeğin üstünden atlar ". Zor olan, bu metne dayalı bir spiral çıkarmaktır.
Göreviniz şu tam metni çıktılar:
heeeeellllllllllllazzzzzzzzzzz
hummmmmmmmmmmmmppppppppppppppy
hubrrrrrrrrrrrrrrrrrrooooooosy
hukyddddoooooooooooooooggggwsy
hukyveeeeerrrrrrrrrrrrrrrrtwsy
hukyvxjjjjjjjjjjuuuuuuuuuttwsy
hukyvxkbbrrrrrrrrrrrrrrrmttwsy
hukyvxkogggggggttttttttomttwsy
tukyvokoellllllllllllahomttwsy
tukyvokoeovvvvvvvvvvvzhomttwsy
tukyvocoeoummmmmmmmmezhomttwsy
tukyvocoeoufooooooopezhomttwsy
tukyvocohoufroooooxpezhomttwsy
tukyvoiohoufrquuuwxpezhomttwsy
tucyvoiohoufbqttiwxpezhomttwsy
tucyvoiohoufbeehiwxprzhomttwsy
tucyvoiohoufkccciwxprzeomttwsy
tjiyvoidhounnnnnnwxprzeomttwsy
tjiyvoidhojjjjjjjjxprzeomttwsy
tjiyvoidhssssssssssprzeopttwsy
tjiyvoidttttttttttttrzeopttwsy
tjiyvoiyyyyyyyyyyyyyyzqopttwoy
tjiyvouuuuuuuuuuuuuuuuqwpttwoy
tjiyvffffnnnnnnnnnnnnnnwpttwoy
tjiyossssssssssssssssssspthwoy
tjizzzzalllllllllllleeeeehhwoy
tjuuqqqqqqqqqqqqqqqqqeeeeehnod
txxxxxoooooooooooooooffffffnod
reeeeevvvvvvvvvvvvvvvvvvvvvvod
gggggggoooooooooooooood
İşte nasıl üretilir,
- "Hızlı kahverengi tilki tembel köpeğin üstünden atlar" pangramını seven gayretli bir tilki vardı. Bir gün dışarı doğru bir sarmalın ortasındaydı ve içine atlamaya ve boyamaya karar verdi.
- Başından sonuna kadar pangramdan geçmek istiyor ve eğer bir harf alfabedeki n'inci harfse, n kez boyamak istiyor.
- Ancak tilki köşelerde dönüş yapmakta çok iyi değildi, bu yüzden her köşeye ulaştığında durup bir sonraki harfe geçmesi gerekiyordu.
- O da olmadığını vurgulamak pangram üç kez tekrarlamak karar Hızlı kahverengi tilki.
- İşiniz, tilki tüm bu harfleri boyadıktan sonra spiralin nasıl görüneceğini göstermektir.
(Hikaye anlatmayan sade versiyon)
Ünlü pangram "Hızlı kahverengi tilki tembel köpeğin üstünden atlar" üç kez tekrarlanır, boşluklar kaldırılır ve tüm harfler küçük harflerle oluşturulur.
thequickbrownfoxjumpsoverthelazydogthequickbrownfoxjumpsoverthelazydogthequickbrownfoxjumpsoverthelazydog
Spiral merkezden başlar ve "t" harfiyle başlar, sağa giderek başlar ve saat yönünde dışarı doğru gider. Geçerli karakter alfabedeki n. Harfse, her zaman bir sonraki karaktere geçer
- spiral bir köşeye ulaşır veya
- geçerli harfler tam olarak n kez yazdırılır.
Daha iyi açıklamak için, ilk üç kelime olan "thequickbrown" ile ilgili spiralin nasıl üretildiğini açıklayacağım.
rooooo
rquuuw
bqttiw
beehiw
kccciw
nnnnnnw
Tilki "t" den başlar, sağa gider, 1. köşeye ulaşır, "t" ile boyar ve sonra "h" ye geçer ve aşağı iner, 2. köşeye ulaşır, "e" ye geçer ve sola gider, 3. köşe, "q" a geçer ve yukarı çıkar, 4. köşeye ulaşır, "u" a geçer ve sağa gider, köşeye ulaşır ve "i" ye geçer, aşağıya iner, köşeye ulaşır ve "c" ye geçer, gider sol, başarılı bir şekilde bir sonraki köşeye ulaşmadan önce 3 "c" yi boyar , "k" ye geçer ve sola gider, hemen bir köşeye ulaşır, "b" ye geçer ve yukarı gider, ulaşmadan önce 2 "b" ler boyar sonraki köşe, "r" ye geçerve yukarı doğru gider, köşeye ulaşır ve "o" ya geçer, sağa gider, sonra "w", aşağı, "n", sola gider.
gözlük
Dizenin herhangi bir standart biçimini içeren isteğe bağlı bir girdi alabilirsiniz
thequickbrownfoxjumpsoverthelazydogthequickbrownfoxjumpsoverthelazydogthequickbrownfoxjumpsoverthelazydog
Çıktınız bir dize olarak biçimlendirilmeli ve yeni satırlar doğru yerleştirilmiş olarak dosyalar veya STDERR yerine STDOUT'a gitmelidir. Boş satırlara yön vermek ve onları takip etmek önemli değildir. Her satırda başlık ve sondaki boşluklara izin verilir, ancak tutarlı olmaları gerekir. Dolayısıyla, verilen metnin bir satırından önce 5 boşluk eklerseniz, her satırdan önce tam olarak 5 boşluk eklemeniz gerekir, böylece spiral aynı görünür.
Bu kod golf , en düşük bayt sayısı kazanır.
Her zamanki gibi, burada varsayılan boşluklar uygulanır.
Gerekli olmamakla birlikte açıklamalar kabul edilir.
Başlık, caird coinheringaahing tarafından yorum başına bir pangram haline getirmek için düzenlenmiştir.
Tembel köpek hikayede görünmek için çok tembel.
Çıktı mektubu koordinatların basit işlevleri ile hesaplanamadığı bir dize meydan okuma oluşturmayı hedefliyorum.