Alfabedeki büyük harflerin bu pikselli yazı tipinde, tüm karakterler 5 birim genişliğinde ve 5 boyundadır.
███ ████ ███ ████ █████ █████ ████ █ █ █████ █ █ █ █ █ █
█ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ ██ ██
█████ ████ █ █ █ ████ ████ █ ██ █████ █ █ ███ █ █ █ █
█ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █
█ █ ████ ███ ████ █████ █ ████ █ █ █████ ███ █ █ █████ █ █
█ █ ███ ████ ███ ████ ████ █████ █ █ █ █ █ █ █ █ █ █ █████
██ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █
█ █ █ █ █ ████ █ █ ████ ███ █ █ █ █ █ █ █ █ █ █ █
█ ██ █ █ █ █ ██ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █
█ █ ███ █ ████ █ █ ████ █ ███ █ █ █ █ █ █ █████
Görüldüğü gibi, harfler arasında ve çizgiler arasında 1 birim boşluk vardır. Böylece her harf 6 × 6 birim yer kaplayabilir.
Harflerin şekillerini doğrudan oluşturmak için tam blok karakterini ( █
) kullanmak yerine , aynı yazı tipinde başka harfler kullanmak istediğimizi varsayalım . Bu, tam bloktan yapılmış harflerin daha büyük metinde tam blok yerine kullanılabilmesi için metnin boyutlarını 6 kat artırmayı içerir.
Bu umarım mantıklı gelmediyse bu örnek olacaktır. Pikselli yazı tipini kullanarak B'den yapılmış bir A:
████ ████ ████
█ █ █ █ █ █
████ ████ ████
█ █ █ █ █ █
████ ████ ████
████ ████
█ █ █ █
████ ████
█ █ █ █
████ ████
████ ████ ████ ████ ████
█ █ █ █ █ █ █ █ █ █
████ ████ ████ ████ ████
█ █ █ █ █ █ █ █ █ █
████ ████ ████ ████ ████
████ ████
█ █ █ █
████ ████
█ █ █ █
████ ████
████ ████
█ █ █ █
████ ████
█ █ █ █
████ ████
B'ler tam bloklardan ve A'lar B'lerden yapılmıştır. B'lerin aralarında yatay ve dikey olarak hala bir birim bulunduğuna dikkat edin.
Bu fikri sadece harfler yerine kelimeler kullanarak genişletebiliriz. İşte "YANGIN" ile yapılan "SU":
█████ █████ ████ █████ █████ █████ ████ █████ █████ █████ ████ █████ █████ █████ ████ █████ █████ █████ ████
█ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █
████ █ ████ ████ ████ █ ████ ████ ████ █ ████ ████ ████ █ ████ ████ ████ █ ████
█ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █
█ █████ █ █ █████ █ █████ █ █ █████ █ █████ █ █ █████ █ █████ █ █ █████ █ █████ █ █
█████ █████ ████ █████ █████ █████ ████ █████
█ █ █ █ █ █ █ █ █ █
████ █ ████ ████ ████ █ ████ ████
█ █ █ █ █ █ █ █ █ █
█ █████ █ █ █████ █ █████ █ █ █████
█████ █████ ████ █████ █████ █████ ████ █████ █████ █████ ████ █████ █████ █████ ████ █████ █████
█ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █
████ █ ████ ████ ████ █ ████ ████ ████ █ ████ ████ ████ █ ████ ████ ████
█ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █ █
█ █████ █ █ █████ █ █████ █ █ █████ █ █████ █ █ █████ █ █████ █ █ █████ █
█████ █████ ████ █████ █████ █████ ████ █████ █████
█ █ █ █ █ █ █ █ █ █ █
████ █ ████ ████ ████ █ ████ ████ ████
█ █ █ █ █ █ █ █ █ █ █
█ █████ █ █ █████ █ █████ █ █ █████ █
█████ █████ ████ █████ █████ █████ ████ █████ █████ █████ ████ █████
█ █ █ █ █ █ █ █ █ █ █ █ █ █ █
████ █ ████ ████ ████ █ ████ ████ ████ █ ████ ████
█ █ █ █ █ █ █ █ █ █ █ █ █ █ █
█ █████ █ █ █████ █ █████ █ █ █████ █ █████ █ █ █████
Harfler arasında ne kadar boşluk olursa olsun, her satırda "YANGIN" ın tekrar tekrar nasıl göründüğüne dikkat edin. "YANGIN" ın en sağdaki örneklerinden üçü, "SU" harflerinin şekli nedeniyle erken kesildi.
Bu fikir, kelimelerden yapılan kelimelerden , hatta kelimelerden yapılan kelimelerden yapılan kelimeler yapmak için kelimelerden yapılan bu kelimeleri kullanarak daha da genişletilebilir . Teorik olarak bir sınır yoktur.
Başka bir örnek, bu yayını 30k karakter sınırının üzerine koyacaktır, ancak bu şık Stack Snippet'ini çalıştırarak "kelimelerden yapılan kelimelerden oluşan kelimeler" ile ne kastedildiğini görebilirsiniz. Parametreleri varsayılan değerlerinde bırakın ve "Git!" E basın. "KÖPEK" kelimesinden yapılan "KEDİ" sözcüğünden yapılmış "KÖPEK" kelimesini görmelisiniz.
Metin kutusuna yalnızca büyük harfler içeren herhangi bir boşlukla ayrılmış sözcük listesi yazmak , üçüncü kelimeden yapılan, dördüncekten yapılmış, ... 'den yapılmış ikinci kelimeden oluşan ilk kelimeyi üretecektir.
UYARI: 4 ve hatta 3 kelimeden daha uzun bir süre girildiğinde, çok fazla metin üretilir ve UZUN zaman alır. Tarayıcınızı / bilgisayarınızı / arabanızı kilitleyebilir.
Meydan okuma
Bu zorluğun amacı, Stack Snippet'inin yaptıklarını en az sayıda karakterle yansıtmaktır.
Yalnızca büyük harf içeren sözcüklerden oluşan boşlukla ayrılmış bir kelime dizesi alan ve yukarıda verilen pikselli yazı tipini kullanarak "üçüncü" den yapılmış "ikinciden" yapılmış ilk kelimeyi çıktılayan bir program yazmalısınız.
Snippet'in "Düz ASCII" onay kutusunun ve yazı tipi boyutu özelliklerinin programınızda desteklenmesi gerekmez. Sözcük listelerinden sözcüklerden yapılan kelimelere dönüşümü yansıtmak ana ve tek şarttır.
ayrıntılar
Giriş stdin'den, komut satırından gelmelidir, ya da sadece dize alan bir işlev yazabilirsiniz.
Girdinin her zaman geçerli olduğunu varsayabilirsiniz, yani büyük harflerden oluşan, tam olarak bir boşlukla ayrılmış, öndeki veya sondaki boşluklar olmayan bir kelime dizisi.
Çıktı, stdout'a (veya benzer bir alternatife) veya seçtiğiniz adda bir dosyaya gitmelidir.
Çıktı tamamen boş alan karakterleri , tam alan karakterleri ve yeni satırlardan oluşmalıdır .
- Boş / tam boşluk karakterleri ya da alan ve tam blok (olmalıdır
,
█
), sırasıyla, veya nokta ve X (.
,X
sırasıyla).
- Boş / tam boşluk karakterleri ya da alan ve tam blok (olmalıdır
Çıktıda yalnızca boş boşluk karakterleri içeren önde gelen sütunlar olmamalıdır , ancak herhangi bir satırda boşluk karakterleri izleyen herhangi bir kombinasyona izin verilir.
Bu yüzden buna izin verilir:
X...X.XXXXX.. X...X.X X.X.X.XXXX.... X.X.X.X.. .X.X..XXXXX..
Ama bu değil:
.X...X.XXXXX.. .X...X.X .X.X.X.XXXX.... .X.X.X.X.. ..X.X..XXXXX..
Yalnızca boş boşluk karakterleri içeren satır aralığı veya arka satır olmamalıdır . İsteğe bağlı olarak tek bir satırsonuna izin verilir.
İşte yazı tipinin daha dize dostu bir sürümü:
.XXX.
X...X
XXXXX
X...X
X...X
XXXX.
X...X
XXXX.
X...X
XXXX.
.XXX.
X...X
X....
X...X
.XXX.
XXXX.
X...X
X...X
X...X
XXXX.
XXXXX
X....
XXXX.
X....
XXXXX
XXXXX
X....
XXXX.
X....
X....
.XXXX
X....
X..XX
X...X
.XXXX
X...X
X...X
XXXXX
X...X
X...X
XXXXX
..X..
..X..
..X..
XXXXX
....X
....X
....X
X...X
.XXX.
X...X
X..X.
XXX..
X..X.
X...X
X....
X....
X....
X....
XXXXX
X...X
XX.XX
X.X.X
X...X
X...X
X...X
XX..X
X.X.X
X..XX
X...X
.XXX.
X...X
X...X
X...X
.XXX.
XXXX.
X...X
XXXX.
X....
X....
.XXX.
X...X
X...X
X..XX
.XXXX
XXXX.
X...X
XXXX.
X..X.
X...X
.XXXX
X....
.XXX.
....X
XXXX.
XXXXX
..X..
..X..
..X..
..X..
X...X
X...X
X...X
X...X
.XXX.
X...X
X...X
.X.X.
.X.X.
..X..
X...X
X...X
X.X.X
X.X.X
.X.X.
X...X
.X.X.
..X..
.X.X.
X...X
X...X
.X.X.
..X..
..X..
..X..
XXXXX
...X.
..X..
.X...
XXXXX
puanlama
Bu kod golf yani bayt kısa teslim kazanır. Herhangi bir tam blok ( █
) örneği 3 yerine 1 bayt olarak sayılabilir; bu nedenle, kullanılan gönderimlerin X
bir avantajı yoktur.
$('#question pre, .answer pre').css('line-height',1)
javascript:
ASCII resmini burada okumayı çok daha kolay hale getirmek için aşağıdaki JavaScript snippet'ini çalıştırabilirsiniz (ör. URL çubuğuna yazıp yapıştırarak)$('#question pre').css('line-height',1)
. Sonuç: i.stack.imgur.com/XmB8C.png