Một phước lành Ailen cổ


14

Tôi không biết ai đã đặt ra những lời này, và tôi không phải là người Ireland, nhưng tôi ban cho bạn một phước lành Ailen:

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

Tôi đã lên kế hoạch đăng bài này vài tuần kể từ bây giờ, nhưng tôi nhận ra rằng ngày hôm qua là Ngày Thánh Patrick.

Quy tắc:

  • Sản xuất văn bản trên chính xác.
    (Hãy thoải mái phá vỡ quy tắc này vì sự thông minh và giải trí.)
  • Chương trình phải tạo ra văn bản theo cách riêng của mình. catkhông phải là một giải pháp hợp lệ.
  • Giải pháp có ít nhân vật nhất "chiến thắng".

Tôi đã thấy những thay đổi nhỏ trong cách diễn đạt giữa các phiên bản của phước lành tôi có được từ Internet, vì vậy tôi đã cố gắng trung bình chúng. Vui lòng sử dụng phiên bản được đăng ở trên. Ngoài ra, tôi bỏ dấu chấm câu để làm cho nó dễ dàng hơn một chút.

Có thể may mắn của người Ailen bao bọc bạn.

Câu trả lời:


2

05AB1E , 117 byte

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

Hãy thử trực tuyến!

'€¿                 "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 ký tự

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

chạy tại codepad.org


8

Haskell, 179 ký tự

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

Điều này khai thác mối liên kết chung cổ xưa giữa người Ailen và người Hàn Quốc. Tất cả các bạn đều biết rằng nghề trồng ren và khoai tây đã đến từ Hàn Quốc, và Kimchi lần đầu tiên được sản xuất tại Dublin ... phải không?


  • Chỉnh sửa: (197 -> 184) Không cần mod(why⁈ :-)); loại bỏ tuyên bố riêng cho văn bản tiếng Hàn.
  • Chỉnh sửa: (184 -> 179) Được sử dụng nhỏ gọn hơn để thể hiện sách mã.

Hahaha hay! Đó là lý do tại sao tôi thường cẩn thận để nói "giải pháp với ít nhân vật nhất " (tôi đã chỉnh sửa bài đăng của mình cho phù hợp). Khai thác Unicode luôn là một lựa chọn, nhưng ít người thực hiện.
Joey Adams

Không thể đặt ba ký tự của chúng ta vào một cách khai thác theo cách này?
FUZxxl

@FUZxxl: Bạn phải cẩn thận: Không phải tất cả các giá trị trong phạm vi 0x0 ~ 0x10FFFF đều có thể sử dụng được. Một số bị cấm hoàn toàn (ví dụ 0xD800 ~ 0xDFFF và bất kỳ giá trị nào kết thúc bằng FFFE hoặc FFFF), một số khác có thể hoặc không thể hợp pháp theo định nghĩa từ vựng của ngôn ngữ lập trình nhất định. Tôi chọn Hangul ở đây vì đây là một khối lớn các giá trị không có lỗ hổng và tất cả chắc chắn là hợp pháp trong bất kỳ định nghĩa nào về chuỗi Unicode. Nhưng, nó chỉ có kích thước ~ 13 bit.
MtnViewMark

MtnViewMark: Nếu bạn có hai đại diện thay thế liên tiếp thì nó thực sự hợp lệ và sẽ là một mật mã duy nhất bên ngoài BMP. Điều đó sẽ yêu cầu việc triển khai sử dụng UTF-16 và có thể cắt giảm nhu cầu nhân vật của bạn bằng một;)
Joey

@Joey - Bạn chỉ có thể sử dụng các chất thay thế nếu mỗi lần xuất hiện của chúng được ghép nối và theo đúng thứ tự (một từ 0xD800 ~ 0xDBFF và tiếp theo từ 0xDC00 ~ 0xDFFF). Nhưng, trong trường hợp của Haskell, đó là moot: Stringlà một chuỗi các giá trị vô hướng unicode (U + 0000 ~ U + D7FF & U + E000 ~ U + 10FFFF), không phải đơn vị mã UTF-16. Lưu ý rằng fromEnumtrả về giá trị vô hướng điểm mã của ký tự, không phải một số giá trị được mã hóa.
MtnViewMark

4

INTERCALL , 3421 byte

Một giải pháp đơn giản. Được tạo tự động, nếu có ai thắc mắc ...

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


3

GolfScript (204 ký tự)

Chứa các ký tự không in, vì vậy sao chép-dán có thể không hoạt động:

: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}/](+

Mã hóa Base64:

OmsnTWF5IHRoZSByb2FkIHJpc2UgdXAgdG8gbWVldCB5b3UKnwh3aW5kIGJlIGFsd2F5cyBhnAVy
IGJhY2uiCXN1biBzaGlurANhcm3IA29upAZmYWNlClTlBGFpbnONA2xsIHNvZnShDGllbGRzCkHk
A3VudGlsIHdlIG1lZXQgYWeyA+EFR29kIGhvbGT4BCBpbvEFjgNsb3cgb2YgSGlzIGhhbmQne2t7
e2skfSowOms7fXsxMjcuMiQ8ey06a30qO31pZn0vXSgr

Thực sự có ít sự dư thừa hơn bạn có thể mong đợi trong chuỗi. Tôi nghĩ tiền tiết kiệm của gzip là 2/3 từ Lempel-Ziv và 1/3 từ mã hóa Huffman; những gì tôi đang sử dụng về cơ bản là LZ, nhưng tôi có nhiều chi phí hơn định dạng gzip.

Lưu ý rằng đây là giải pháp đầu tiên lấy ít byte hơn đầu ra.


2

Bash / Sed, 206 ký tự

Tôi đã không quản lý để đánh bại Peter Taylor, nhưng giống như giải pháp của anh ta, đó là ít byte hơn so với ban đầu. Nhưng tôi đã không sử dụng các ký tự không thể in được.
sedrất hữu ích trong thử thách tương tự "không xa lạ gì với codegolf" . Nhưng ở đó tôi đã sử dụng nó hai lần, để nén danh sách thay thế. Ở đây, văn bản quá ngắn cho thủ thuật này.

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, 431 425 byte

<?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);}

Một cách tiếp cận lập bản đồ và chuyển đổi cơ sở để lưu trữ thông tin. Tuy nhiên, tôi đã thất bại trong việc giữ kích thước chương trình rất nhỏ.


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="

Đáng buồn thay, điều này dài hơn nhiều so với đầu ra hoặc đặt nguyên văn chuỗi. Ngay cả chính chuỗi ký tự (không có dấu ngoặc kép) dài hơn hai ký tự so với đầu vào. Làm thế nào mà có thể được?


1

Quetzalcoatl , 218 byte

"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"

Chuỗi được in ngầm.

Hoặc pyth, 217 byte

"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

Keg , 175 ký tự

‘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║;

Cảm ơn chúa, tất cả các từ dài đều có trong từ điển của Keg. Chỉ cần sử dụng nén chuỗi để giảm chiều dài.

TIO hiện không hoạt động vì nó cần được cập nhật.

Hãy thử trực tuyến!


0

Wren , 248 byte

Áp dụng phương pháp này .

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"))

Hãy thử trực tuyến!

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.