สวัสดีชาวโลก! ด้วยการทำซ้ำอักขระที่ จำกัด


79

ในภาษาที่คุณเลือกให้เขียนโปรแกรมที่ให้ผลลัพธ์อักขระHello world!ตามด้วยการขึ้นบรรทัดใหม่ รหัส:

  • ไม่ควรใช้อักขระเกินสองครั้ง (ตัวอักษรและตัวเลขสัญลักษณ์ช่องว่าง ... อะไรก็ได้)
  • ไม่ควรใช้ทรัพยากรภายนอก
  • ไม่ควรใช้การป้อนข้อมูลของผู้ใช้
  • ไม่ควรส่งออกอย่างอื่น

ตัวอย่างของโปรแกรมไพ ธ อนที่ถูกต้อง:

print("He%so world!"%(2*'l'))

ตัวอย่างของโปรแกรมไพ ธ อนที่ไม่ถูกต้อง (ใช้อักขระ 'r' สามครั้ง):

print("Hel"+chr(108)+'o world!')

ผู้ชนะคือผู้ที่ได้คะแนนมากที่สุดหลังจากผ่านไป 14 วัน

แก้ไข: ผู้ชนะได้รับเลือก! ขอบคุณสำหรับการทำงานกับคำถามนี้!


25
สิ่งที่เกี่ยวกับตัวอักษรซ้ำแล้วซ้ำอีกในตัวอย่างงูหลาม "ที่ถูกต้อง" นอกจากนี้ยังมีสิ่งเหล่านี้: - '' ()
Adam Speight

15
@ AdamSpeight คุณหมายถึงอะไร? ตัวอักษรจะถูกใช้เพียงสองครั้งตามข้อกำหนด
Josh

5
@ AdamSpeight ... ซึ่งเป็นตัวอักษรเดียวกัน
VisioN

4
ฉันคิดว่าคุณหมายถึงตัวละครไม่ควรปรากฏเกินสองครั้งนั่นคือไม่ควรทำซ้ำมากกว่าหนึ่งครั้ง
Michael Kay

56
ฉันเดาว่าbrainfuck ไม่เป็นไปตามคำถาม ...
jub0bs

คำตอบ:


61

ทับทิม (1.9+)

เนื่องจากนี่เป็นการประกวดความนิยมลองไม่ใช้ตัวละครใด ๆ จาก 'Hello world!' ในขณะที่ยังใช้อักขระอื่นไม่เกินสองครั้ง:

puts("S\107VsbG8gV29ybGQhCg".unpack(?m))

มันคือ 40 ตัวอักษร btw

ทุบตี

และอันนี้ใช้เวทย์มนตร์ยูนิโคด

หมายเหตุ:

  • ในขณะที่อักขระ orignal ปรากฏที่อื่น (ไม่เหมือนกับตัวอย่าง ruby) สตริงที่พิมพ์มีอักขระที่ไม่ใช่ ASCII เท่านั้น
  • สองในสามช่องว่างนั้นเป็นแท็บดังนั้นจึงไม่มีอักขระ utf-8 ที่ปรากฏเกิน 2 ครั้ง
  • เนื่องจากเลขฐานสองของออคเต็ตบางส่วนปรากฏมากกว่า 2 ครั้งหวังว่ามันจะไม่ขัดกับกฎ ฉันพยายามที่จะแก้ไขพวกเขาว่า

รหัส:

echo '𝓗𝐞𝑙𝒍𝓸 𝓦𝗈𝖗𝖑𝘥¡'|iconv -t  asCIi//TRANSLIT

สำหรับผู้ที่ไม่มีการติดตั้งแบบอักษรที่เหมาะสมจะมีลักษณะดังนี้:

รหัสเป็นภาพ

นี่คือ hexdump:

00000000  65 63 68 6f 20 27 f0 9d  93 97 f0 9d 90 9e f0 9d  |echo '..........|
00000010  91 99 f0 9d 92 8d f0 9d  93 b8 e2 80 8a f0 9d 93  |................|
00000020  a6 f0 9d 97 88 f0 9d 96  97 f0 9d 96 91 f0 9d 98  |................|
00000030  a5 c2 a1 27 7c 69 63 6f  6e 76 09 2d 74 09 61 73  |...'|iconv.-t.as|
00000040  43 49 69 2f 2f 54 52 41  4e 53 4c 49 54 0a        |CIi//TRANSLIT.|
0000004e

คุณต้องเรียกใช้บนเครื่องที่ชุดอักขระเริ่มต้นคือ utf-8 ฉันลองใช้ OSX10.8 โดยใช้ iTerm2 ด้วยสภาพแวดล้อมต่อไปนี้:

ทุบตีทำงานใน iTerm2

PHP 5.4

สิ่งนี้ใช้ zLib: (น่าเสียดายที่มันใช้ตัวอักษรeและo)

<?=gzuncompress('x▒▒H▒▒▒W(▒/▒IQ▒!qh');

hexdump:

00000000  3c 3f 3d 67 7a 75 6e 63  6f 6d 70 72 65 73 73 28  |<?=gzuncompress(|
00000010  27 78 9c f3 48 cd c9 c9  57 28 cf 2f ca 49 51 e4  |'x..H...W(./.IQ.|
00000020  02 00 21 71 04 68 27 29  3b                       |..!q.h');|
00000029

+1

นี่คือรหัสทับทิม 2.0 ที่ฉันใช้ในการทดสอบรายการที่ซ้ำกัน:

d=ARGF.read
p [d.split(//),d.unpack('C*')].map{|x|x.inject(Hash.new(0)){|i,s|i[s]+=1;i}.select{|k,v|v>2}}

2
ในขณะที่ฉันชื่นชมความฉลาดของ Unicode เสมอความพยายามในการทุบตีของคุณดูเหมือนจะไม่ตรงตามข้อกำหนดของคำถาม "เขียนโปรแกรมที่ให้ผลลัพธ์อักขระHello world!ตามด้วยการขึ้นบรรทัดใหม่"
FireFly

14
@FireFly: มันทำให้พอใจ iconv ด้วยการเข้ารหัสเป้าหมายascii//translitจะแปลอักขระ unicode เป็น ascii พื้นฐาน และแน่นอนว่าเสียงก้องจะเพิ่มบรรทัดใหม่ดังนั้นอันนี้เหมาะกับสเป็ก (ถ้าเราไม่พิจารณาความคล้ายคลึงกันของออคเต็ต)
SztupY

5
ในระบบของฉันฉันได้รับHello World?แทนHello World!
marinus

1
@ SztupY โอ้คุณพูดถูกฉันไม่ดี ฉลาดมากฉันชอบมัน!
FireFly

1
คุณจะได้คะแนนโบนัสกี่คะแนนหากผู้ตรวจสอบซ้ำของคุณสอดคล้องกับข้อมูลจำเพาะการทำซ้ำ :-)
corsiKa

55

คุณต้องใช้ภาษาที่แสดงออกมากขึ้น

จีน 6 4   3 ตัวอักษร

喂世!

ใช้ Google แปลบนผลิตนี้ Hello world!

(ขอบคุณ @sreservoir และ @Quincunx สำหรับการอัปเดต)


33
+1 สำหรับก้มกฎ ... "ในภาษาที่คุณเลือก ... "
WallyWest

4
รักมัน แต่โปรแกรมเป็นอย่างไรกันแน่?
Pierre Arlaud

3
ที่จริงคุณสามารถมองไปที่มันเป็นโปรแกรมในภาษา Google แปล - ภาษาจีนเป็นภาษาย่อยของ :)
โทมัส

2
+1 ความคิดดี. 世界 = Shìjiè = โลก 你好 = nǐhǎo = สวัสดี "โลกสวัสดี!" แปลเป็น "Hello World!" มันสามารถลงสนามได้อีก:你好世!
Justin

2
สามารถลงเล่นกอล์ฟได้ไกลกว่า喂世!ด้วยค่าใช้จ่ายของ ... อืมไม่มีอะไรจะใช้จ่ายอีกต่อไป
muhmuhten

45

HQ9 +, 1 อักขระ

H

ทำให้มันง่าย :)


7
HQ9 + ส่งออกเครื่องหมายจุลภาค แต่;)
Josh

8
ฉันยังคงรักษาคำตอบของคุณไว้ ... มันเป็นการประกวดความนิยมหลังจากนั้นกฎสำหรับลม!
Josh

26
@Josh นี่เป็นหนึ่งในเหตุการณ์ที่หายากซึ่งฉันพลาดปุ่มลงในความคิดเห็น หากเราทิ้งกฎไม่มีอะไรเหลือที่จะพิสูจน์การแข่งขันได้เลย
Howard

5
@Howard ฉันรู้สึกสกปรก ฉันยกระดับความคิดเห็นของคุณและของ Josh
Cruncher

22
print Hello Worldคำถามทั้งหมดเป็นwho can submit a HQ9+ answer fasterคำถามจริง
totymedli

44

C, 192 ตัวอักษร

#
#
/*$$@``*/ATION_[]={9.};main(BBCDDEEFFGGHJJKKLLMMPPQQRRSSUUVVWWXXYYZZabbdefgghhjjkkmpqqsstuuvvwxyyzz) {printf("He%clo \
world!%c\
",2^7&!8.&~1|~-1?4|5?0x6C:48:6<3>2>=3<++ATION_[0],'@'^79-5);}

ตั้งแต่นี้ไม่ได้เป็นกอล์ฟฉันตัดสินใจที่จะมีความสนุกสนานและพยายามที่จะใช้ตัวละครทุกตัวว่าสองครั้ง (ในขณะที่วางไม่กี่เท่าที่เป็นไปได้ในความคิดเห็นเนื่องจากว่าเป็นที่น่าเบื่อ) ฉันรู้ว่าฉันไม่ได้ดีนักเนื่องจากรหัสของฉันมีรหัส "ตาย" ที่น่าเบื่อเช่นกัน (ไม่ใช่ในความหมายที่แท้จริง อย่างไรก็ตามนี่เป็นเรื่องที่ยากอย่างน่าประหลาดใจ (แต่สนุก) ด้วยข้อ จำกัด ของตัวละครสองตัวดังนั้นฉันจึงไม่สามารถคิดอะไรที่น่าสนใจมากกว่านี้ได้ มันทำให้ฉันมีความคิดสำหรับปัญหาใหม่แม้ว่า ...

(อัปเดตตามความคิดเห็นของ @ ugoren)


3
น่าประทับใจอย่างสร้างสรรค์ ฉันชอบมัน.
Josh

เครื่องหมายทับ `` `เส้นที่สามและสี่ทำให้เป็นเส้นต่อเนื่องไม่ใช่บรรทัดใหม่ และบรรทัดที่สี่จะถูกยกเลิกโดย EOF ทำให้ถูกกฎหมาย
Josh

1
ฉันคิดว่าคุณสามารถคอมเม้นได้.โดยใช้มันเป็นเศษส่วน []นอกจากนี้คุณสามารถประกาศอาร์เรย์และใช้
ugoren

@ugoren โทรดีเกี่ยวกับ.; ฉันแค่คิดถึงการใช้มันสำหรับการเข้าถึง struct <s> สำหรับการประกาศอาร์เรย์ฉันไม่อยู่,เพราะการprintfโทรและฉันก็ไม่;ได้ดังนั้นฉันไม่แน่ใจว่าจะประกาศได้อย่างไร </s> Duh ฉันสามารถแทนที่ATION_ได้ ..
FireFly

44

คำสั่งเป็นกลุ่ม (18 keystrokes)

iHeEsc3alEscio WorRightd!Enter

ไม่ต้องกดแป้นซ้ำ ๆ เกินสองครั้ง

มันนะฝ่าฝืนกฎ "ที่ผู้ใช้ป้อน" เพราะมันยังคงเป็นผู้ใช้ที่ต้องป้อนข้อมูลลำดับนั้น แต่ผมคิดว่าถ้าคุณเก็บไว้เป็นแมโครหรือ nnoremap ก่อนมันจะนับตั้งแต่คุณเพียงแค่การทำงานได้โดยไม่ต้องชัดเจนทำใด ๆ อินพุตที่จะทำให้มันเกิดขึ้น

นอกจากนี้ยังต้องnocompatibleมีการตั้งค่าซึ่งอาจนับเป็นการใช้ทรัพยากรภายนอกดังนั้นฉันจึงได้กำหนดรูปแบบอื่นไว้ด้านล่าง:


คำสั่งเป็นกลุ่ม (21 การกดแป้น)

iHeEsc3alEscio WorCtrl+[$ad!Enter

ชุดรูปแบบนี้ไม่จำเป็นต้องnocompatibleมีการตั้งค่าแม้ว่ามันจะหลีกเลี่ยงการใช้Escสามครั้งโดยใช้Ctrl+[แทน


16
หากคุณกำลังพูดถึงตัวละครในRight, EscและEnterพวกเขาไม่ได้ตัวอักษรตัวอักษรเหล่านั้น เป็นกลุ่มที่เกี่ยวข้องในการกดแป้นพิมพ์ซึ่งฉันถือว่าเทียบเท่ากับตัวละครสำหรับวัตถุประสงค์ของการแข่งขันนี้ (และกฎ "อย่าทำซ้ำมากกว่าสองครั้ง") ฉันใช้การiกดแป้นพิมพ์สองครั้งเท่านั้นและการ<Right>กดแป้นครั้งเดียว สำหรับEฉันไม่เคยใช้เลย - แต่ฉันจะใช้<Esc>สองครั้งและ<Enter>ครั้งเดียว
Joe Z.

6
ตอนนี้ฉันผิดหวังที่ Emacs ไม่มีคำสั่ง Mx hello-world ...
RemcoGerlich

4
แม้ว่าจะเป็นเช่นนั้นนั่นคือสามlวินาที
Joe Z.

1
:set nocompatibleคุณควรทราบว่าคุณจะต้อง
jazzpi

1
น่าอัศจรรย์ แต่ตัวฉันเองพบว่าใช้Rightไม่มากนัก
gefei

29

Piet - ไม่มีตัวละครเลย!

สวัสดีชาวโลกใน Piet


7
ฉันจะพิจารณารหัสเป็น "ตัวอักษร"
Paŭlo Ebermann

3
@ PaŭloEbermannคุณคิดว่าอะไรจะเป็นโมเดลที่ไม่เหมือนใคร เช่นรูปร่างที่แตกต่าง? สี? ขนาด? การรวมกันของมัน?
ApproachingDarknessFish

1
@ValekHalfHeart นิยามของ codel ที่ไม่ซ้ำกันถูกกำหนดไว้ในข้อมูลจำเพาะของภาษา : มันเป็นบล็อกของ codel ที่สามารถทำให้ง่ายขึ้นเป็นพิกเซลสีเดียว
plannapus

@plannapus ในกรณีที่ฉันไม่ได้ท้าทายนี้เป็นไปได้ทางเทคนิคใน Piet ฉันอาจคิดอะไรบางอย่างที่สร้างสรรค์
ApproachingDarknessFish

@ValekHalfHeart โอ้มันไม่ใช่คำวิจารณ์ของคำตอบนี้: ฉันรักมัน! ความท้าทายนี้ไม่ใช่ codegolf
plannapus

26

Perl, 29 ตัวอักษร

คำตอบนี้รวมถึงอุดตัน x อันดับ!

say"07-8*d<#B+>!"^xRATEDkL0GZ

Perl, 23 ตัวอักษร

สั้นกว่า แต่ไม่มีรองเท้าโป๊ :-( ความคิดพื้นฐานเดียวกันแม้ว่า ...

say'0@@lo World!'^"x%,"

Perl, 20 ตัวอักษร

น่าเบื่อ ...

say"Hello Wor\x6Cd!"

7
อืม .... ประหลาด? +1 :)
Josh


19

Sclipting 11 ตัวอักษร

丟낆녬닆묬긅덯댦롤긐뤊

ผมเห็นโปรแกรม HelloWorld ที่สวยงามนี้ในรายการโปรแกรม esolang ของ Hello World


5
โว้ว! ขอแสดงความยินดีคุณเป็นคนแรกที่โพสต์สิ่งใดก็ตามเกี่ยวกับ esolangs ของฉันที่อยู่นอก esolangs.org :) (หรืออย่างน้อยก็เป็นครั้งแรกที่ฉันค้นพบ)
Timwi

18

สกาล่า: 34 29 ตัวอักษร

ฉันภูมิใจในตัวเองสำหรับสิ่งนี้:

printf("He%c%co world!\n",108,108)

มีช่วงเวลาที่ยากลำบากมากในการเอาชนะ 'l', 'r's, เครื่องหมายคำพูดและวงเล็บ จากนั้นฉันก็ค้นพบprintfฟังก์ชันJava เก่าซึ่งจะแปลงตัวเลขเป็นตัวอักษรอย่างมีความสุขเมื่อได้รับตัว%cระบุรูปแบบ

ปรับปรุง

MrWonderfulทำสิ่งที่ยอดเยี่ยมโดยชี้ให้เห็นว่าตัวละครทั้งกลุ่มสามารถได้รับการบันทึกโดยใช้สตริง 'l' ที่สองของฉันด้วยตนเองในสตริง!

printf("Hel%co world!\n",108)

4
@KCaloux เนื่องจากคุณได้รับอนุญาตไม่เกิน 2 'l จะไม่พิมพ์("Hel% co world \ n", 108)ที่ 28 จะดีกว่านี้หรือ
MrWonderful

@MrWonderful ฉันคิดว่าคุณถูกต้องอย่างแน่นอน! (ฉันเพิ่งรู้ว่าฉันลืมใส่ '!')
KChaloux

จากสิ่งที่ฉันเข้าใจนี่ไม่ใช่รายการที่ถูกต้องแม้ว่าจะพยายามอย่างดี printfมีเช่นเดียวกับr worldกันไปสำหรับตัวอักษรoที่ใช้มากกว่าหนึ่งครั้ง นี่เป็นไปตามการตีความของฉันของคำสั่งต่อไปนี้จาก OP "ตัวอย่างของโปรแกรมหลามที่ไม่ถูกต้อง (ตัวอักษร 'r' ถูกใช้สามครั้ง): print("Hel"+chr(108)+'o world!')"
javatarz

@JAnderton ฉันมีโปรแกรมทับทิมแยกสคริปต์ออกเพื่อให้แน่ใจว่าไม่มีตัวอักษรรวมอยู่เกินสองครั้ง อ่านอีกครั้ง มี 2 ​​rs ไม่ใช่ 3 หนึ่งใน "printf" และอีกหนึ่งใน "โลก" เหตุผลหนึ่งที่หลามไม่ถูกต้องเป็นเพราะมันรวมถึงchr
KChaloux


15

Perl: 34 ตัวอักษร

$_="He12o wor3d!
";s{\d}{l}g;print

วิ่งตัวอย่าง:

bash-4.1# perl -e '$_="He12o wor3d!
> ";s{\d}{l}g;print'
Hello world!

(ไม่ใช่เรื่องใหญ่โพสต์เพียงเพื่อใช้อย่างน้อยหนึ่งครั้งในชีวิตของฉันs///กับตัวคั่นแฟนซีเหล่านั้น)


15

PHP, 33 ตัวอักษร

ฉันชอบ PHP ที่ให้อภัยและเข้าใจมากแค่ไหน!

<?=Hel.str_rot13("yb jbe").'ld!';

ก่อนที่มันจะถูกลบ (หรือถ้ามันยังอยู่ที่นั่นฉันตาบอดโดยสิ้นเชิง) ฉันเห็นความคิดเห็นที่บอกว่า "ไม่มี brainf * ck?: D" มันเป็นไปไม่ได้ที่จะเขียนวิธีแก้ปัญหาใน BrainF * ck อย่างที่คุณรู้ แต่ฉันจัดการรหัสนี้เพียงเพื่อ lulz

++++++++++[>++++>+++++>++++++>+++++++>++++++++++>+++++++++++>+++++++++<<<<<<<-]
>>>.+++.--.>++.>+.+++++++.<<<<++++++.>>>>>+++++.+.--.>+++++.<.---.+++++.<<<<-.+
+.<------.------.>>>>>+++++.<----------.<<<<--.>>>>++++++++.--------.+++.
<<<<++.+++++++.+++++.-------.>>>>+++++++.--------.<<<<------.++++++.>++++++++.

หากคุณไม่มีล่าม BF โค้ดด้านบนจะพิมพ์ PHP one: P


ฉันไม่รู้รหัสแม้แต่อย่างนี้ก็ใช้ได้! แท็ก Php ไม่ได้ถูกปิดและสตริงHelไม่ได้อยู่ในเครื่องหมายคำพูด นอกจากนี้ฉันไม่เคยได้ยินมาstr_rot13ก่อน
Aycan Yaşıt

1
@ AycanYaşıtไม่จำเป็นต้องปิดแท็ก php ใน EOF และถ้าคุณใส่สตริงโดยไม่มีเครื่องหมายอัญประกาศมันจะถือว่าเป็นค่าคงที่ที่ไม่ได้ประกาศพร้อมเนื้อหาเดียวกันกับชื่อและให้คำเตือน
Einacio

1
คุณสามารถหลีกเลี่ยงคำเตือน (และบันทึกแรก.) โดยวางก่อนHel <?=
Paŭlo Ebermann

4
@ PaŭloEbermannHel<?=str_rot13("yb jbe")?>ld!
MirroredFate

2
@ PaŭloEbermannฉันจะบอกว่าการใช้ที่เป็นเหมือนการโกงเนื่องจากไม่ใช่ PHP ที่บริสุทธิ์อีกต่อไป
Vereos

13

HTML Fiddle - 21 ตัวอักษร

Hel&#108;o World!<br>

นั่นรวมถึงการขึ้นบรรทัดใหม่หรือไม่?
Josh

Doh ... พลาดข้อกำหนดนั้นไป! ฉันจะเพิ่ม <br> ที่นั่น
Briguy37

7
@netinept: มันขอขึ้นบรรทัดใหม่ไม่ใช่\nอย่างนั้นฉันจะบอกว่ามี<br>ค่า
Chris

1
แต่ตัวละครrซ้ำในการแก้ปัญหา ฉันตีความข้อกำหนดนั้นผิดหรือไม่?
javatarz

2
"l" และ "o" ด้วยเช่นกัน แต่อักขระแต่ละตัวสามารถใช้ได้สูงสุดสองครั้ง
xem

12

ทับทิม: 27 ตัวอักษร

puts [:Hel,'o wor',"d!"]*?l

วิ่งตัวอย่าง:

bash-4.1# ruby <<ENDOFSCRIPT
> puts [:Hel,'o wor',"d!"]*?l
> ENDOFSCRIPT
Hello world!

ทับทิม: 25 ตัวอักษร

(ขึ้นอยู่กับความคิดเห็นของ Vache)

puts 'He'+?l*2+"o world!"

Ruby: 23 ตัวอักษร

(สำเนาคำตอบ Powershell ของDanko Durbić )

puts"He#{?l*2}o world!"

puts 'He'+'l'*2+'o world!'ตัวละครตัวหนึ่งสั้นลง!
ดีดู

3
แต่มี 6 "'' 's …
จัดการ

ฮ่าฮ่าฉันมุ่งเน้นไปที่ตัวอักษรที่ฉันไม่เคยสังเกตมาก่อนเลย ไม่เป็นไร!
ดีดู

1
ลบช่องว่างหลังจากใส่แล้วทำให้เป็น 23 -puts"He#{?l*2}o world!"
Zero Fiber

1
@SampritiPanda pรวมเครื่องหมายคำพูดในเอาต์พุต ฉันชอบเก็บรูปแบบผลลัพธ์ที่ต้องการอย่างเคร่งครัด แต่คุณพูดถูกไม่จำเป็นต้องใช้พื้นที่ ขอขอบคุณ.
จัดการ

12

JavaScript, 66 ตัวอักษร

alert('Hel'+window.atob("\x62G8gd29ybGQhCg=="));//rH+in.\x689yQhC;

แรงบันดาลใจจาก FireFly ตัวละครทุกตัวที่ใช้โดยรหัสนี้จะถูกใช้สองครั้ง


ฉันคิดว่าคุณได้รับอนุญาตให้ใช้อักขระบางตัวเพียงครั้งเดียวและคุณสามารถลบความคิดเห็นได้
John Dvorak

2
@JanDvorak - อืมแน่ใจว่าเขาจะทำแบบนั้นได้ - แต่ฉันคิดว่าวิธีแก้ปัญหานี้สมควรได้รับการอัปเดตสำหรับความกระหายเลือดที่แท้จริงของการใช้ตัวละครแต่ละตัวและทุกครั้ง :-)
Bob Jarvis

6
+1 แต่มันง่ายที่จะใช้อักขระแต่ละตัวสองครั้งอย่างแน่นอนหากคุณเพียงแค่เพิ่มความหมายซึ่งเป็นความคิดเห็น
Camilo Martin

11

C - 43 ตัวอักษร

main(){printf("Hel%co World!%c",'k'+1,10);}

เอาท์พุต

Hello World!

จำนวนตัวละคร

' ' Count: 1    '!' Count: 1    '"' Count: 2    '%' Count: 2    ''' Count: 2
'(' Count: 2    ')' Count: 2    '+' Count: 1    ',' Count: 2    '0' Count: 1
'1' Count: 2    ';' Count: 1    'H' Count: 1    'W' Count: 1    'a' Count: 1
'c' Count: 2    'd' Count: 1    'e' Count: 1    'f' Count: 1    'i' Count: 2
'k' Count: 1    'l' Count: 2    'm' Count: 1    'n' Count: 2    'o' Count: 2
'p' Count: 1    'r' Count: 2    't' Count: 1    '{' Count: 1    '}' Count: 1

คุณไม่ต้องการmainฯลฯ
FireFly

@FireFly ฉันเดาอย่างนั้น! มันบอกว่าจะเขียนโปรแกรม
Kirk Backus

นั่นคือ C แต่ไม่ใช่ C ++ C ++ ไม่มี int โดยนัย (และคุณไม่สามารถสำรองอีกi)
Ben Voigt

@BenVoigt Okie dokie!
Kirk Backus


9

nginx.conf

return  200 "He&#x6clo wo&#x72ld!\n";

ในการดำเนินการ:

% curl -6 http://localhost/ | lynx -dump -stdin
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100    21  100    21    0     0  20958      0 --:--:-- --:--:-- --:--:-- 21000

   Hello world!

%

มี 4 ช่องว่างในการแก้ปัญหานี้ ... มี
จอช

3
@Josh จริงๆแล้วมีอยู่ 5 ข้อ แต่คุณไม่คิดหรือไม่ว่าสองในสี่ตัวแรกนั้นเป็นแท็บแล้วอันสุดท้ายคือช่องว่างที่ไม่สามารถแตกได้? :-)
cnst

นั่นเหมาะกับฉัน!
Josh

@Josh ที่จริงแล้วตอนนี้เรากำลังใช้ HTML ไม่จำเป็นต้องใช้อีกต่อsetไป ตอนนี้มีเพียง 3 ช่องว่างตอนนี้หนึ่งในนั้นอาจเป็นแท็บ!
cnst

ทำได้ดีมาก
Josh

9

คำสั่ง Emacs (15 การกดแป้น)

He<Ctrl-3>l<Left>o wor<End>d!<Enter>

หากเสียงตอบรับดังกล่าวนั้นถูกกฎหมายก็ต้องเป็นเช่นนี้ :)

มันล้อเล่นกันได้เลย :)

นอกเหนือจากเรื่องไร้สาระฉันอาจจะบีบบางอย่างมากขึ้น แต่สิ่งนี้ดูเหมือนจะดีพอสำหรับตอนนี้ (เพราะมันเป็นกลุ่ม)

ป.ล. โปรดละเว้นเรื่องไร้สาระทั้งหมดของฉัน (ฉัน (ไม่ค่อยมี) ใช้เสียงเรียกเข้าเช่นกัน!)


2
ฉันยังคิดว่าเป็นกลุ่ม> emacs
Joe Z.

6

Befunge 98

a"!dlrow ol":'e'Hck,@

นี่คือเวอร์ชั่นที่ตัวละครทุกตัวปรากฏขึ้นสองครั้ง

bka!e:dw"H@!dlrow  ol":'e'Hbk,a,@

ทิ้งพวงของขยะบนกองซ้อน

โบนัสเป็นตัวละครทุกตัวที่ทำกับมันโดย IP



5

จริงๆแล้วฉันไม่ชอบการโกง: หน้า

หลาม

print("!dlrow os%eH"[::-1]%('l'*2))

2
คุณควรระบุว่าเป็นของ python2 ใน python3 TypeErrorที่คุณได้รับสตริงตรงกันข้ามเป็นผลผลิตแล้ว
Bakuriu

1
สำหรับใช้ในอาร์กิวเมนต์ Py3K ของการพิมพ์ต้องอยู่ในวงเล็บ print("!dlrow os%eH"[::-1]%('l'*2))ทำงานได้ทั้งในเวอร์ชัน (Python2 และ Py3K)
AMK

4

GolfScript

'He

o world!'n/"l"*

ขึ้นบรรทัดใหม่สองบรรทัด (โชคดีที่บรรทัดที่สามจำเป็นสำหรับการเปลี่ยนตัวถูกจัดเตรียมโดยบิวด์อินn) โดยใช้สตริงตัวอักษรทั้งสองชนิดเพื่อหลีกเลี่ยงสำเนาสี่เท่าของเครื่องหมายคำพูด เนื่องจากlเป็นอักขระตัวเดียวที่เกิดขึ้นมากกว่าสองครั้งในสตริงเดิมจึงไม่ยากเกินไป


คุณลืม "!"
Howard

@ ฮาวาร์ดคิดถึงมัน อุ่ย
Peter Taylor

จดหมาย o ซ้ำอีกครั้ง
Adam Speight

1
@AdamSpeight: oมีเพียงสองครั้งตัวอักษรที่เป็น กฎระเบียบที่บอกว่ามันไม่ได้รับอนุญาตให้มีตัวละครมากขึ้นกว่าสองเท่า
ProgramFOX

4

อืมมม

ใน C ตามกฎเหล่านี้เราสามารถมีได้เพียงหนึ่ง#define(เพราะiและn) และการเรียกใช้ฟังก์ชันหรือคำจำกัดความที่มากที่สุดสองรายการ ( (และ))

ฉันคิดว่ามีวิธีเดียวที่จะทำได้ (แม้ว่าฉันอาจผิด):

main(){puts("Hello w\x6fr\154d!");}

คุณยังคงต้องส่งออกบรรทัดใหม่ต่อท้าย การทำสิ่งที่ท้าทายใน C เป็นเรื่องยาก ...
Josh

1
@ Josh ฉันเพียงแค่ต้องใช้แทนputs() printf()
Oberon

2
แต่มีอะไรผิดปกติoในworld?
VisioN

@VisioN ในร่างเก่าของรหัสเดียวกัน (ก่อนที่ฉันจะรู้ว่าจริง ๆ แล้วมันยากที่จะเขียนโปรแกรม) ฉันใช้อีก 'o' ที่อื่น แต่นี่ไม่ใช่code-golfดังนั้นฉันเดาว่าไม่ต้องแก้ไข
Oberon

4
ที่จริงแล้วฉันไม่แน่ใจว่าทำไมคำตอบทุกข้อจึงแสดงจำนวนตัวอักษร
Oberon


4

C - 46 ตัวละคร

main(){printf("He%clo wor%cd!\x0d",'l',108);}

พิมพ์ออกมา:

สวัสดีชาวโลก!


หากคุณมีเป้าหมายในการเล่นกอล์ฟmain(){printf("He%clo world!%c",108,10);}ควรทำงานและช่วยให้คุณประหยัดเวลา
FireFly

@FireFly คุณถูกต้องคุณช่วยฉัน 3 ตัวละคร ข้อเสนอแนะของคุณทำงานได้อย่างสมบูรณ์แบบเช่นกัน
Phillip Kinkade

4

เครื่องแฅ่ละชนิด

จาก esolang wiki:

ป้อนคำอธิบายรูปภาพที่นี่

และคุณสามารถฟังรหัสที่มา


11
ฉันว่านี่ไม่ถูกต้อง ฉันเห็นมากกว่า 4 อันตรงกลางทางขวามือ
Justin

4
ไม่ต้องพูดถึงสายของสี่ G ต่อเนื่องในการวัดที่ 9
Joe Z.

คุณเขียนหรือแสดงเฉพาะหรือไม่ ระบุว่าคุณเชื่อมโยงไปยัง MIDI ของ esolang archive
FireFly

4
-1 สำหรับการลอกเลียนแบบ นี้เป็นจากวิกิพีเดีย esolang คุณไม่ได้อ้างถึง แก้ไข: เปลี่ยนกลับตอนนี้วิกิ esolang ถูกอ้างถึงแล้ว
Justin

-1 สำหรับการใช้บันทึกเดียวกันมากกว่า 2 ครั้ง
Erik the Outgolfer

4

PHP

32 ตัวอักษร

สังเกตว่าฉันไม่ได้ใช้อักขระเกินสองครั้งตั้งแต่ l! = L

He<?=strtolower("LLO WOR");?>ld!

!นอกจากนี้ยังทราบว่าแม้จะมีของกองมากเกินลบในการเป็นตัวแทนที่มีการแบ่งบรรทัดหลัง


1
คุณกำลังใช้สามช่องว่าง แต่ฉันคิดว่าสิ่งนี้สามารถแก้ไขได้ลบที่อยู่ใกล้กับแท็ก PHP! : P
Vereos

1
นั่นเป็นเรื่องรวดเร็วแม้ว่าฉันจะรู้ตัวมาก่อนที่จะอ่านความคิดเห็นของคุณ (จากคำตอบจริง ๆ )
Francisco Presencia

เอาต์พุต "H" ไม่ควรเป็นตัวพิมพ์ใหญ่หรือไม่
David Cary

จริงทั้งหมดพลาดที่ยัง):
Francisco Presencia

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.