Eski Bir İrlanda Kutsaması


14

Bu kelimeleri kimin yazdığını bilmiyorum ve ben İrlandalı değilim, ama sana İrlandalı bir nimet veriyorum:

May the road rise up to meet you
May the wind be always at your back
May the sun shine warm upon your face
The rains fall soft upon your fields
And until we meet again
May God hold you in the hollow of His hand

Bunu birkaç hafta sonra yayınlamayı planlıyordum, ama dün Aziz Patrick Günü olarak şaşkına döndüm.

Kurallar:

  • Yukarıdaki metni aynen üretin.
    (Akıllılık ve eğlence uğruna bu kuralı ihlal etmekten çekinmeyin.)
  • Program metni kendi isteğine göre oluşturmalıdır. catgeçerli bir çözüm değil.
  • En az karaktere sahip çözüm "kazanır".

İnternetten aldığım nimetlerin versiyonları arasında küçük farklılıklar gördüm, bu yüzden onları ortalamayı denedim. Lütfen yukarıda yayınlanan sürümü kullanın. Ayrıca, noktalamayı biraz daha kolaylaştırmak için bıraktım.

İrlandalıların şansı sizi yutsın.

Yanıtlar:


2

05AB1E , 117 bayt

'€¿“‡âŽÓ€î€†€€èÊ€‚“„€Ë‡´).ªðý“€¿€€†â£ƒ€¾€„‰Ã€î““€¿€€ïë€ï‡Š€›€ž‚ƒ““€¿€€‡µã»©ÃˆÉ€žŠÑ““€€¥·sާš¼ˆÉ€ž™æ““€ƒ‡æ€¦‰Ã†î“).ªÀ»

Çevrimiçi deneyin!

'€¿                 "may"
“‡âŽÓ€î€†€€èÊ€‚“    "god hold you in the hollow of"
„€Ë‡´               "his hand"
)                   push stack into a list
.ª                  sentence-case each
ðý                  and join by spaces
“€¿€€†â£ƒ€¾€„‰Ã€î“  "may the road rise up to meet you"
“€¿€€ïë€ï‡Š€›€ž‚ƒ“  "may the wind be always at your back"
“€¿€€‡µã»©ÃˆÉ€žŠÑ“  "may the sun shine warm upon your face"
“€€¥·sާš¼ˆÉ€ž™æ“   "the rains fall soft upon your fields
“€ƒ‡æ€¦‰Ã†î“        "and until we meet again"
)                   push stack into a list
.ª                  sentence-case each
À                   rotate list left
»                   join by newlines
                    implicitly print

14

Python, 143 karakter

#coding:u8
print u'慍⁹桴⁥潲摡爠獩⁥灵琠敭瑥礠畯䴊祡琠敨眠湩⁤敢愠睬祡⁳瑡礠畯⁲慢正䴊祡琠敨猠湵猠楨敮眠牡灵湯礠畯⁲慦散吊敨爠楡獮映污潳瑦甠潰潹牵映敩摬ੳ湁⁤湵楴敷洠敥⁴条楡੮慍⁹潇⁤潨摬礠畯椠桴⁥潨汬睯漠⁦楈⁳慨摮'.encode("u16")[2:]

codepad.org'da çalıştırın


8

Haskell, 179 karakter

e="\n "++['='..'z']++e;i r=[e!!div r 64,e!!r]
main=putStr$i.fromEnum=<<"뒦뾁빭몁뷴릩끷뮸몁뺵끹봁벪몹끾봺뀒릾끹뭪끼뮳멁맪끦뱼릾븁릹끾봺뷁맦먰뀒릾끹뭪끸뺳끸뭮볪끼릷벁뺵봳끾봺뷁뫦먪뀙뭪끷릮본끫릱뱁븴뫹끺뵴볁뾴뺷끫뮪뱩븀놳멁뺳빮뱁뼪끲몪빁리릮변뒦뾁댴멁뭴뱩끾봺끮볁빭몁뭴뱱봼끴뫁덮븁뭦볩뀀"

Bu, İrlandalılar ve Koreliler arasındaki eski ortak bağı sömürüyor. Dantel ve patates yetiştiriciliğinin Kore üzerinden geldiğini ve Kimchi'nin ilk olarak Dublin'de yapıldığını biliyordunuz ... değil mi?


  • Düzenleme: (197 -> 184) Gerek yok mod(neden :-)); Korece metin için ayrı bir bildirimi ortadan kaldırdı.
  • Düzenleme: (184 -> 179) Kod kitabını temsil etmek için daha kompakt kullanılır.

Hahaha güzel! Bu yüzden genellikle "en az karakter içeren çözüm" demeye dikkat ediyorum (görevimi buna göre düzenledim). Unicode'u kullanmak her zaman bir seçenektir, ancak birkaç kişi bunu alır.
Joey Adams

Dört karakterimizi bu şekilde istismar eden bir tanesine koymak mümkün değil mi?
FUZxxl

@FUZxxl: Dikkatli olmalısınız: 0x0 ~ 0x10FFFF aralığındaki tüm değerler kullanılamaz. Bazıları açıkça yasaklanmıştır (örneğin 0xD800 ~ 0xDFFF ve FFFE veya FFFF ile biten herhangi bir değer), diğerleri belirli bir programlama dilinin sözcüksel tanımında yasal olabilir veya olmayabilir. Hangul'u burada seçiyorum çünkü deliksiz büyük bir değer bloğu ve Unicode dizesinin herhangi bir tanımında kesinlikle yasal. Ancak, sadece ~ 13 bit boyutundadır.
MtnViewMark

MtnViewMark: Eğer birbirini takip eden iki vekil varsa, o zaman gerçekten geçerlidir ve BMP dışında tek bir kod noktası olacaktır. Bu, uygulamanın UTF-16 kullanmasını gerektirir ve karakter ihtiyaçlarınızı birer birer azaltabilir;)
Joey

@Joey - Vekilleri sadece her görünüşü eşleştirilmiş ve uygun sırada (0xD800 ~ 0xDBFF'den diğeri 0xDC00 ~ 0xDFFF'den) varsa kullanabilirsiniz. Ancak, Haskell'in durumunda bu tartışma: StringUTF-16 kod birimleri değil, bir unicode skaler değerleri dizisidir (U + 0000 ~ U + D7FF & U + E000 ~ U + 10FFFF). fromEnumBazı kodlanmış değerleri değil, karakterin kod noktası skaler değerini döndürdüğünü unutmayın .
MtnViewMark

4

INTERCALL , 3421 bayt

Basit bir çözüm. Merak eden biri varsa otomatik olarak oluşturulur ...

INTERCALL IS A ANTIGOLFING LANGUAGE
SO THIS HEADER IS HERE TO PREVENT GOLFING IN INTERCALL
THE PROGRAM STARTS HERE:
PUSH LXXVII
PRINT
PUSH XCVII
PRINT
PUSH CXXI
PRINT
PUSH XXXII
PRINT
PUSH CXVI
PRINT
PUSH CIV
PRINT
PUSH CI
PRINT
PUSH XXXII
PRINT
PUSH CXIV
PRINT
PUSH CXI
PRINT
PUSH XCVII
PRINT
PUSH C
PRINT
PUSH XXXII
PRINT
PUSH CXIV
PRINT
PUSH CV
PRINT
PUSH CXV
PRINT
PUSH CI
PRINT
PUSH XXXII
PRINT
PUSH CXVII
PRINT
PUSH CXII
PRINT
PUSH XXXII
PRINT
PUSH CXVI
PRINT
PUSH CXI
PRINT
PUSH XXXII
PRINT
PUSH CIX
PRINT
PUSH CI
PRINT
PUSH CI
PRINT
PUSH CXVI
PRINT
PUSH XXXII
PRINT
PUSH CXXI
PRINT
PUSH CXI
PRINT
PUSH CXVII
PRINT
PUSH X
PRINT
PUSH LXXVII
PRINT
PUSH XCVII
PRINT
PUSH CXXI
PRINT
PUSH XXXII
PRINT
PUSH CXVI
PRINT
PUSH CIV
PRINT
PUSH CI
PRINT
PUSH XXXII
PRINT
PUSH CXIX
PRINT
PUSH CV
PRINT
PUSH CX
PRINT
PUSH C
PRINT
PUSH XXXII
PRINT
PUSH XCVIII
PRINT
PUSH CI
PRINT
PUSH XXXII
PRINT
PUSH XCVII
PRINT
PUSH CVIII
PRINT
PUSH CXIX
PRINT
PUSH XCVII
PRINT
PUSH CXXI
PRINT
PUSH CXV
PRINT
PUSH XXXII
PRINT
PUSH XCVII
PRINT
PUSH CXVI
PRINT
PUSH XXXII
PRINT
PUSH CXXI
PRINT
PUSH CXI
PRINT
PUSH CXVII
PRINT
PUSH CXIV
PRINT
PUSH XXXII
PRINT
PUSH XCVIII
PRINT
PUSH XCVII
PRINT
PUSH XCIX
PRINT
PUSH CVII
PRINT
PUSH X
PRINT
PUSH LXXVII
PRINT
PUSH XCVII
PRINT
PUSH CXXI
PRINT
PUSH XXXII
PRINT
PUSH CXVI
PRINT
PUSH CIV
PRINT
PUSH CI
PRINT
PUSH XXXII
PRINT
PUSH CXV
PRINT
PUSH CXVII
PRINT
PUSH CX
PRINT
PUSH XXXII
PRINT
PUSH CXV
PRINT
PUSH CIV
PRINT
PUSH CV
PRINT
PUSH CX
PRINT
PUSH CI
PRINT
PUSH XXXII
PRINT
PUSH CXIX
PRINT
PUSH XCVII
PRINT
PUSH CXIV
PRINT
PUSH CIX
PRINT
PUSH XXXII
PRINT
PUSH CXVII
PRINT
PUSH CXII
PRINT
PUSH CXI
PRINT
PUSH CX
PRINT
PUSH XXXII
PRINT
PUSH CXXI
PRINT
PUSH CXI
PRINT
PUSH CXVII
PRINT
PUSH CXIV
PRINT
PUSH XXXII
PRINT
PUSH CII
PRINT
PUSH XCVII
PRINT
PUSH XCIX
PRINT
PUSH CI
PRINT
PUSH X
PRINT
PUSH LXXXIV
PRINT
PUSH CIV
PRINT
PUSH CI
PRINT
PUSH XXXII
PRINT
PUSH CXIV
PRINT
PUSH XCVII
PRINT
PUSH CV
PRINT
PUSH CX
PRINT
PUSH CXV
PRINT
PUSH XXXII
PRINT
PUSH CII
PRINT
PUSH XCVII
PRINT
PUSH CVIII
PRINT
PUSH CVIII
PRINT
PUSH XXXII
PRINT
PUSH CXV
PRINT
PUSH CXI
PRINT
PUSH CII
PRINT
PUSH CXVI
PRINT
PUSH XXXII
PRINT
PUSH CXVII
PRINT
PUSH CXII
PRINT
PUSH CXI
PRINT
PUSH CX
PRINT
PUSH XXXII
PRINT
PUSH CXXI
PRINT
PUSH CXI
PRINT
PUSH CXVII
PRINT
PUSH CXIV
PRINT
PUSH XXXII
PRINT
PUSH CII
PRINT
PUSH CV
PRINT
PUSH CI
PRINT
PUSH CVIII
PRINT
PUSH C
PRINT
PUSH CXV
PRINT
PUSH X
PRINT
PUSH LXV
PRINT
PUSH CX
PRINT
PUSH C
PRINT
PUSH XXXII
PRINT
PUSH CXVII
PRINT
PUSH CX
PRINT
PUSH CXVI
PRINT
PUSH CV
PRINT
PUSH CVIII
PRINT
PUSH XXXII
PRINT
PUSH CXIX
PRINT
PUSH CI
PRINT
PUSH XXXII
PRINT
PUSH CIX
PRINT
PUSH CI
PRINT
PUSH CI
PRINT
PUSH CXVI
PRINT
PUSH XXXII
PRINT
PUSH XCVII
PRINT
PUSH CIII
PRINT
PUSH XCVII
PRINT
PUSH CV
PRINT
PUSH CX
PRINT
PUSH X
PRINT
PUSH LXXVII
PRINT
PUSH XCVII
PRINT
PUSH CXXI
PRINT
PUSH XXXII
PRINT
PUSH LXXI
PRINT
PUSH CXI
PRINT
PUSH C
PRINT
PUSH XXXII
PRINT
PUSH CIV
PRINT
PUSH CXI
PRINT
PUSH CVIII
PRINT
PUSH C
PRINT
PUSH XXXII
PRINT
PUSH CXXI
PRINT
PUSH CXI
PRINT
PUSH CXVII
PRINT
PUSH XXXII
PRINT
PUSH CV
PRINT
PUSH CX
PRINT
PUSH XXXII
PRINT
PUSH CXVI
PRINT
PUSH CIV
PRINT
PUSH CI
PRINT
PUSH XXXII
PRINT
PUSH CIV
PRINT
PUSH CXI
PRINT
PUSH CVIII
PRINT
PUSH CVIII
PRINT
PUSH CXI
PRINT
PUSH CXIX
PRINT
PUSH XXXII
PRINT
PUSH CXI
PRINT
PUSH CII
PRINT
PUSH XXXII
PRINT
PUSH LXXII
PRINT
PUSH CV
PRINT
PUSH CXV
PRINT
PUSH XXXII
PRINT
PUSH CIV
PRINT
PUSH XCVII
PRINT
PUSH CX
PRINT
PUSH C
PRINT
END

vay


3

GolfScript (204 karakter)

Yazdırılmayan karakterler içeriyor, bu nedenle kopyala yapıştır çalışmayabilir:

:k'May the road rise up to meet you
wind be always ar back¢ sun shin¬armÈon€face
Tåainsll soft¡ields
Aäuntil we meet ag²áGod holdø inñlow of His hand'{k{{k$}*0:k;}{127.2$<{-:k}*;}if}/](+

Base64 kodlu:

OmsnTWF5IHRoZSByb2FkIHJpc2UgdXAgdG8gbWVldCB5b3UKnwh3aW5kIGJlIGFsd2F5cyBhnAVy
IGJhY2uiCXN1biBzaGlurANhcm3IA29upAZmYWNlClTlBGFpbnONA2xsIHNvZnShDGllbGRzCkHk
A3VudGlsIHdlIG1lZXQgYWeyA+EFR29kIGhvbGT4BCBpbvEFjgNsb3cgb2YgSGlzIGhhbmQne2t7
e2skfSowOms7fXsxMjcuMiQ8ey06a30qO31pZn0vXSgr

Gerçekten dizede beklediğinizden daha az yedeklilik vardır. Bence gzip'in tasarrufu Lempel-Ziv'in 2 / 3'ü ve Huffman kodlamasının 1 / 3'ü; kullandığım aslında LZ, ama gzip biçiminden daha fazla yük var.

Bunun, çıktıdan daha az bayt alan ilk çözüm olduğunu unutmayın .


2

Bash / Sed, 206 karakter

Peter Taylor'ı yenmeyi başaramadım, ama çözümü gibi , orijinalinden daha az bayt . Ama yazdırılamayan karakterler kullanmadım.
sedbenzer "codegolf yabancıları" meydan okuma yararlı oldu. Ama orada ikame listesini sıkıştırmak için iki kez kullandım. Burada, metin bu hile için çok kısa.

sed 's/Z/May the /;s/W/ uponYr f/;s/Y/ you/'<<X
Zroad rise up to meetY
Zwind be always atYr back
Zsun shine warmWace
The rains fall softWields
And until we meet again
May God holdY in the hollow of His hand

2

PHP, 431342 bayt

<?php $s="May therodisupm\nwnblckfTAgGH";$p=array('01234563','3cd8h328c73m','jj','3e6643');$b=str_split('s781937ab63cd348v28cfsgah93i631jg12b314328c73i1klfsbch3b5ah63g17et1k6fn56371ahb3m1u3b8m4ta6j9bfoh93ch4aj3g6v1p1ahf0123q89358j9328c3ah3456358u8g38m3rab351h9');foreach($b as $x){$x=b($x);if($x>27){$c=str_split($p[$x-28]);foreach($c as $y){echo $s[b($y)];}}else{echo $s[$x];}}function b($a){return base_convert($a,36,10);}

Bilgileri depolamak için bir haritalama ve temel dönüştürme yaklaşımı. Ancak, program boyutunu çok küçük tutamadım.


1

Haskell - 284

s n=words"And God His May The again always at back be face fall fields hand hold hollow in meet of rains rise road shine soft sun the to until up upon warm we wind you your"!!(fromEnum n-48)
main=mapM_(putStrLn.unwords.map s)$words"3IEDLJAQ 3IP967R8 3IHFNMR: 4C;GMR< 0KOA5 31>Q@I?B2="

Ne yazık ki, bu çıktıdan çok daha uzun veya dizgi kelimesini koymak. Dize değişmez değerleri bile (tırnak işaretleri olmadan) girişten iki karakter daha uzun olur. Nasıl olabilir?


1

Quetzalcoatl , 218 bayt

"May the road rise up to meet you\nMay the wind be always at your back\nMay the sun shine warm upon your face\nThe rains fall soft upon your fields\nAnd until we meet again\nMay God hold you in the hollow of His hand"

Dizeler dolaylı olarak yazdırılır.

Veya pyth, 217 bayt

"May the road rise up to meet you\nMay the wind be always at your back\nMay the sun shine warm upon your face\nThe rains fall soft upon your fields\nAnd until we meet again\nMay God hold you in the hollow of His hand

1

Fıçı , 175 karakter

‘3p‘®m‘00‘®t¶©m  ©t  2½;4•;up to 2m;you\n©m  ©t  2⬩;be 0Ȧ;at 0B;0∞;\n©m  ©t  sun kƝ;4Ȧ;0M;0B;0Ƚ;\nThe A④;2÷;4l;0M;0B;8R;\nAnd 0🄄;we 2m;0¡;\n©m  God 1④;you in ©t  dɅ;of His 0║;

Çok şükür tüm uzun kelimeler Keg sözlüğünde. Uzunluğu azaltmak için dize sıkıştırması kullanır.

TIO şu anda güncellenmesi gerektiği için çalışmıyor.

Çevrimiçi deneyin!


0

Wren , 248 bayt

Bu yöntemi benimsemek .

System.print("Zroad rise up to meetY\nZwind be always atYr back\nZsun shine warmWace\nThe rains fall softWields\nAnd until we meet again\nMay God holdY in the hollow of His hand".replace("Z","May the ").replace("W"," uponYr f").replace("Y"," you"))

Çevrimiçi deneyin!

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.