พิมพ์ตัวอักษรสุดท้ายกลางและตัวแรกของรหัสของคุณ


60

ความท้าทายนั้นง่ายมาก: พิมพ์อักขระตัวสุดท้ายตัวกลางและตัวแรกของซอร์สโค้ดของโปรแกรมตามลำดับนั้น

อักขระกลางถูกกำหนดดังต่อไปนี้โดยสมมติว่าความยาวของแหล่งที่มาของnอักขระและการจัดทำดัชนี 1 รายการ:

  • ถ้าnเป็นเช่นนั้นให้พิมพ์อักขระ -th n/2และn/2 + 1-th ( abcdef == cd)
  • ถ้าnเป็นคี่ให้พิมพ์(n-1)/2 + 1อักขระ -th ( abcde == c)

กฎระเบียบ

  • [last][middle][first]เนื่องจากไม่มีการป้อนข้อมูลพิมพ์สุดท้ายกลางและตัวอักษรตัวแรกในรหัสต้นฉบับของคุณในรูปแบบ จะมีความยาว 3-4 ตัวอักษร
  • เอาต์พุตต้องไม่มีช่องว่างต่อท้ายใด ๆ อย่างไรก็ตามหากช่องว่างเป็นอักขระตัวแรกตัวพิมพ์ใหญ่หรืออักขระตัวสุดท้ายจะต้องพิมพ์ดังกล่าว
  • ซอร์สโค้ดต้องมีความn >= 3ยาวอักขระ
  • รหัสจะต้องประกอบด้วย>= 3ตัวอักษรที่ไม่ซ้ำกัน
  • ช่องโหว่มาตรฐานเป็นสิ่งต้องห้าม
  • นี่คือดังนั้นทางออกที่สั้นที่สุดในตัวละครชนะ

ตัวอย่าง

# Form: [code] --> [output]
xyz --> zyx
abcd --> dbca
1 --> # not allowed: too short
abcde --> eca
aaabb --> # not allowed: not enough unique characters
System.out.print("S;pr"); --> ;prS
this is a test --> ts t
123[newline]45 --> 53[newline]1

ข้อเสนอการท้าทาย


6
อาจเป็นเพียงฉัน แต่ "รหัสจะต้องประกอบด้วย> = 3 ตัวอักษรที่ไม่ซ้ำกัน" แนะนำตัวละครทั้งหมดของโปรแกรมว่าควรจะไม่ซ้ำกันในขณะที่คุณต้องการเพียงอย่างน้อย 3 ตัวอักษรที่แตกต่างกัน
Grzegorz Oledzki

4
@Belhenix น้อยกว่าสามตัวละครที่ไม่ซ้ำกันช่วยให้การแก้ปัญหาง่ายเหมือน121ภาษาที่ดีมาก
Khuldraeseth na'Barya

2
หากทุกคนสามารถหาภาษาสแต็คที่ใช้-สำหรับการปฏิเสธและโดยปริยายพิมพ์กับเลื่อนบรรทัดให้\n1-เป็นสาม byter การค้นหาของฉันยังไม่ได้ผล
Khuldraeseth na'Barya

3
@Belhenix Whitespace เป็นไปได้อย่างแน่นอนว่ามีอักขระที่ถูกต้องที่ไม่ซ้ำกันมาก (space, linefeed, tab)
bigyihsuan

2
ไม่สามารถเปลี่ยนแปลงได้ในขณะนี้ด้วย 58 คำตอบ แต่การที่ต้อง "ตัวอักษรตัวแรกของรหัสจะต้องแตกต่างจากตัวอักษรตัวสุดท้ายของรหัส" จะตัดคำตอบที่ไม่สำคัญออกมามากมาย นั่นอาจเป็นเจตนาของ "> = 3 ตัวอักษรที่ไม่ซ้ำกัน" แต่ข้อกำหนดนั้นไม่ได้ยากมาก
manassehkatz

คำตอบ:


171

JavaScript, 9 7 ไบต์

N=>a=-N

ขาออก: NaN

ลองออนไลน์!


4
ฉลาดมาก. นี่เป็นกลยุทธ์ที่ฉันพยายามทำ แต่ก็ไม่สามารถสะดุดกับภาษาที่มีข้อผิดพลาดเพียงพอ
ouflak

49
นี่คือหนึ่งในคำตอบที่ดีที่สุดของ Javascript ที่ฉันเคยเห็นที่นี่
Daniel

21

หญ้าขนาด 17 ไบต์

wWWwwwVVwWWwWWWww

ลองออนไลน์!

-2 ไบต์ขอบคุณ jimmy23013

wwwเอาท์พุท หญ้าละเว้นตัวอักษรทั้งหมดนอกเหนือจากw, และW vดังนั้นทั้งสองVจึงถูกเพิกเฉย พวกเขาอยู่ที่นั่นเพื่อให้แน่ใจว่าตัวละครกลางเป็นw- ฉันไม่มีความคิดวิธีการส่งออกvหรือWใน Grass ... ฉันสามารถใช้ตัวละครอื่นแทนVแต่Vรักษาความงามของรหัส


1
" โชคดีที่ตัวละครกลางจบลงด้วยความน่ากลัวและไม่ใช่ av หรือ W - ฉันไม่รู้เลยว่าจะเอาท์พุท v หรือ W ใน Grass ... " ได้อย่างไร xD ฉันพยายามทำสิ่งที่คล้ายกันใน Whitespace ที่มีตัวละครเพียงสามตัว (space, tab, newline) แต่น่าเสียดายที่ฉันไม่โชคดีมาก ..โชคดีที่ฉันสามารถเพิ่ม no-ops จำนวนมากเพื่อแก้ไขได้
Kevin Cruijssen

@KevinCruijssen ถ้าตัวละครตัวกลางเป็นอย่างอื่นฉันอาจจะเพิ่มตัวอักษรที่อยู่ตรงกลางx(หรือตัวละครที่ไม่ใช่ Grass ตัวอื่นที่ Grass ไม่สนใจ) เพื่อย้ายwไปยังตำแหน่งที่ถูกต้อง
Robin Ryder

อาฉันเป็นคนงี่เง่า .. ฉันสามารถแทรกตัวละครที่ไม่ใช่ช่องว่างได้เช่นกันที่ช่องว่างจะละเว้น ;) -2 ไบต์ขอขอบคุณ
Kevin Cruijssen

1
17 ไบต์ :wWWwww  wWWwWWWww
jimmy23013

@ jimmy23013 ขอบคุณ! และขอบคุณสำหรับการโพสต์เคล็ดลับของคุณ ; ฉันต้องการให้มันเข้าใจสิ่งที่คุณทำ! ฉันเปลี่ยนช่องว่างเป็นVs เพราะฉันพบว่าสวยกว่า ;-)
Robin Ryder

17

brainfuck , 17 ไบต์

U-[>+<-UU--]>...U

ลองออนไลน์!

ด้วย unprintables นี้สามารถลดลงถึง 7 ไบต์: ␀..␀_.␀


1
ภายในกฎ แต่ BF ไม่ได้ใช้Uเป็นคำสั่ง ฟังก์ชั่นรหัสคือ-[>+<---]>.ดังนั้นผลลัพธ์ที่คาดหวังจะเป็น.--ซึ่งมันไม่ได้ส่งออก
bigyihsuan

16
@bigyihsuan แต่ซอร์สโค้ดยังคงมีUs และล่ามนี้จะละเว้นพวกเขาอย่างมีความสุข ทุกคำตอบที่มีความคิดเห็นหรือมีที่ว่างหลายแห่ง (หรือสิ่งอื่นใดที่ไม่สำคัญกับภาษา) จะไม่ถูกนับรวมหรือไม่?
dzaima

1
ไม่ควรU-[>+<-UU--]>...Uหรือ ในรูปแบบปัจจุบันรหัสแสดงเพียงหนึ่ง U
Helena

1
@ Flater ใช่แล้วที่นี่พวกเขาคุ้นเคยกับการทำให้การท้าทายง่ายขึ้น แต่นั่นไม่ใช่จุดประสงค์ทั้งหมดของแท็กcode-golfใช่ไหม คำตอบมากมายที่นี่เพียงอย่างเดียวทำให้งานของพวกเขาง่ายขึ้นโดยการเพิ่มช่องว่างนำหน้า / ต่อท้ายและโดยทั่วไปในโค้ด - กอล์ฟที่นี่สิ่งใดก็ตามที่เป็นไปตามกฎระเบียบที่ได้รับอนุญาต (และถ้าฉันต้องเดาถ้ามีกฎ เป็นไปไม่ได้มากแล้ว) จะหมายถึงความท้าทายอาจยังคงอยู่ที่ 0 คะแนนและอาจถูกปิดเช่นกัน)
dzaima

2
ทำไมคุณไม่เพียงแค่ใช้ÿ-.ÿ..ÿ? ที่พิมพ์และสั้น
Dorian

17

ภาษาการเขียนโปรแกรมของเช็คสเปียร์ , 119 ไบต์

 ,.Ajax,.Page,.Act I:.Scene I:.[Enter Ajax and Page]
Ajax:  You big big big big big cat.Speak thy.Speak thy.Speak thy. 

ลองออนไลน์!

พิมพ์สามช่องว่าง ไม่มีช่องว่างการพิมพ์:

ภาษาการเขียนโปรแกรมของเช็คสเปียร์ , 227 ไบต์

,.Ajax,.Page,.Act I:.Scene I:.[Enter Ajax and Page]Ajax:You is the sum of a big big big big big big cat a big pig.
You is the sum of you a large huge large big pig.
Speak thy.Speak thy.You is the sum of you a big pig.Speak thy.

ลองออนไลน์!

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


2
ฉันไม่ได้คาดหวังว่าเช็คสเปียร์จะปรากฏสิ่งนี้ นี่เป็นเรื่องใหญ่
bigyihsuan

1
หวังว่าฉันจะ +1 ได้เพียงเพื่อการเรียนรู้ภาษานี้!
Stilez

1
แม้ในข้อความที่ส่งออกดีบั๊กของล่ามออนไลน์ความรู้สึกของอารมณ์ขันของผู้เขียน: คำเตือนที่บรรทัดที่ 2: คาดหวังว่า 'ใจ'
dlatikay

1
163 ไบต์สำหรับเวอร์ชั่นที่สองโดยลงท้ายด้วย!
Robin Ryder

1
@ UnrelatedString ตกลงขอบคุณ! เสร็จสิ้น
Robin Ryder

14

Python 2 , 13 11 ไบต์


print' t' 

ในการทำให้ช่องว่างชัดเจน:

$ xxd solution.py
0000000: 0a70 7269 6e74 2720 7427 20           .print' t'
$ python2 solution.py | xxd
0000000: 2074 0a                                t.

ลองออนไลน์!

-2 ไบต์ขอบคุณ wastl!


6
ทั้งช่องว่างที่ต่อท้ายเอาต์พุต (ขึ้นบรรทัดใหม่) ซึ่งไม่ได้รับอนุญาต ทางเลือก Python 2: ลองออนไลน์!
สูญเสีย

นอกจากนี้ฉันไม่คิดว่าสิ่งนี้ถูกต้อง: Python กำหนดให้คุณต้องมีบรรทัดใหม่ที่ท้ายรหัสของคุณ
Geza Kerecsenyi

5
@GezaKerecsenyi ตามที่ฉันเข้าใจแล้วบรรทัดใหม่ในตอนท้ายของรหัสที่มาเป็นเพียงคำแนะนำ ดู PEP8
mypetlion

1
@GezaKerecsenyi Just a guideline
mbomb007

@wastl ขอบคุณ! แก้ไขแล้ว.
TFeld

11

RProgN 2 , 3 ไบต์

1
0

ลองออนไลน์!

ฉันคิดว่ามันถูกต้อง?


ฉันคาดเดา1และ0ถูกผลักลงบนสแต็กจากนั้นมีการพิมพ์ป๊อปโดยนัยในตอนท้ายของโปรแกรมหรือไม่ ใช่ถูกต้อง
bigyihsuan

2
@bigyihsuan นั่นคือสิ่งที่ฉันคาดเดาเช่นกัน ฉันไม่รู้ภาษาฉันจำได้ว่ามันทำสิ่งนี้: p
dzaima

@dzaima ฮ่าฮ่าเมื่อคุณโพสต์คำตอบและคุณไม่รู้ด้วยซ้ำว่ามันทำงานอย่างไร xD ฉันเคยเห็น RProgN มาสองสามครั้งก่อนหน้านี้กับ[quine]ความท้าทายเก่า ๆก่อนที่กฎระเบียบquine จะเปลี่ยนไป
Kevin Cruijssen

ฉันเชื่อว่านี่เป็นภาษาพูดได้หลายภาษาtacบน Linux
tsh

11

05AB1E , 7 5 ไบต์


„ RR

R \nเอาท์พุท

-2 bytes โดยรับแรงบันดาลใจจากคำตอบแบบแบตช์ของ@Neil ดังนั้นอย่าลืมโหวตให้เขาด้วย!

ลองออนไลน์

5 ไบต์ทางเลือกโดย@Grimy :


12,1

12\nเอาท์พุท

ลองออนไลน์

7 ไบต์แรกตอบ:

'?„«'«?

?«'เอาท์พุท

ลองออนไลน์

คำอธิบาย:

          # No-op newline
 R       # Push 2-char string " R"
   R      # Reverse this string to "R "
          # (output the result implicitly with trailing newline)

          # No-op newline
12,       # Print 12 with trailing newline
   1      # Push a 1 (no implicit printing, since we already did an explicit print)

'?       '# Push 1-char string "?"
  „«'    '# Push 2-char string "«'"
     «    # Concatenate them both together
      ?   # Output without trailing newline


8

PHP , 9 ไบต์

<?=";;<";

ลองออนไลน์!


3
ที่จริงแล้วเนื่องจาก PHP เอาท์พุทโค้ดเป็นข้อความจนกระทั่ง<?แท็กแรกคุณสามารถใช้หนึ่งใน 4-byte solution ที่ไม่สำคัญเช่น1231อะไรก็ได้ที่ไม่มีตัวอักษรพิเศษเป็นตัวแรกและตัวสุดท้าย คำตอบของคุณอาจจะสั้นรหัสจริงคำตอบ PHP
manassehkatz

7

เยลลี่ 5 ไบต์

001 0

ลองออนไลน์!

เอาต์พุตมีอักขระที่แตกต่างกันสองตัว แต่โค้ดก็มีอักขระที่สามเช่นกัน

รุ่น 4 ไบต์เล็กน้อย:

1231

ไม่ได้121นอกจากนี้ยังมีคำตอบที่น่ารำคาญที่ถูกต้อง?
Teleporting Goat

@TeleportingGoat: ไม่เพราะมันมีเพียงสองตัวละครที่แตกต่าง
Oliver Hankeln

7

Excel, 9 ไบต์

=("))=" )

วงเล็บจำนวนมาก

หมายเหตุ: อักขระกลางที่ส่งคืนสามารถเป็นตัวละครใด ๆ ได้จริงเนื่องจากเป็นรหัสกลาง


วงเล็บ! (หลอดไฟ) "ผมได้ติดอยู่กับตัวอักษรตัวสุดท้ายจำเป็นต้องเป็น ทำได้ดี!
เวอร์นิช

ขอบคุณ! มันเป็นสิ่งที่ฉันพยายามคิดออกเช่นกันและจากนั้นฉันจำได้ว่าวงเล็บจะทำงานได้
William porter

6

ทับทิมขนาด 6 ไบต์


p " "

ลองออนไลน์!

เอาต์พุตนี้" "บวกกับการขึ้นบรรทัดใหม่ รหัสลงท้ายด้วย a "อักขระสองตัวตรงกลางและ"และเริ่มต้นด้วยบรรทัดใหม่


3
ฉันชอบป้ายของคุณฉันเชื่อว่าเป็นสีเทาดำในN² ฉันสร้างภาพเกือบเหมือนกันเพื่อช่วยฉันแก้ปัญหาเรื่อง Project Euler Nim ป้ายของคุณมีเรื่องราวหรือไม่?
ดาเมียน

1
รับได้สวย! ฉันชอบ "doodling" ในระหว่างการประชุมโดยการสร้างรูปภาพโดยใช้ one-liners xor เป็นคนแรกที่ชอบ
ชำนาญวิชาประวัติศาสตร์

6

ภาษาแบตช์ DOS / Windows ขนาด 9 ไบต์

@echo @o@

ยินดีต้อนรับสู่ Code Golf & Coding ความท้าทาย Stack Exchange, +1 สำหรับโพสต์แรกที่ดี!
A _


5

แบตช์ 9 ตัว


@echo hh

ตัวอักษรกลางและตัวสุดท้ายเป็นทั้งคู่hและจากนั้นตัวechoพิมพ์จะขึ้นบรรทัดใหม่ตามค่าเริ่มต้นซึ่งเป็นอักขระตัวแรกของสคริปต์


5

PowerShell ขนาด 3 ไบต์

00000000: 0a0d 31                                  ..1

ใช้งานได้เฉพาะใน Microsoft Windows

ผลลัพธ์น่าเสียดายที่ 8 ไบต์ใน UTF-16 แต่คำถามบอกว่าจะเอาท์พุทตัวละครไม่ใช่ไบต์ เนื้อหา UTF-16 เป็นเพียงหนึ่งในวิธีที่ได้รับการสนับสนุนเพื่อแสดงอักขระใน PowerShell พวกเขาจะไม่ถูกตีความแตกต่างจากไฟล์ ASCII


มันเป็นคำตอบที่สมาร์ท
mazzy

1
ได้รับอนุญาตเพราะ0x0a != 0x0d != 0x31:)
bigyihsuan

5

Bash ( 15 11 ตัวอักษร)

echo -n e-e

ซึ่งพิมพ์ออกมา

e-e
  • -4 ตัวอักษรโดยไม่ได้ใช้ |rev

1
@racraman การแก้ไขที่คุณแนะนำecho<space>e<space><space>eจะแสดงผลe<space>e<newline>แทนe<space>eดังนั้นฉันจึงปฏิเสธ ขึ้นบรรทัดใหม่เป็นส่วนหนึ่งของผลลัพธ์ซึ่งเป็นสาเหตุที่GrzegorzOledzkiใช้-nตัวเลือก ลองecho -n e-eออนไลน์ VS ลองecho e eออนไลน์ และอีกครั้งโปรดอย่าแก้ไขคำตอบของคนอื่น หากคุณมีสนามกอล์ฟที่จะแนะนำให้แสดงความคิดเห็น
Kevin Cruijssen

ด้วย 11 ไบต์ด้วยprintf pfpแต่เพียงเพราะเราต้องการช่องว่างสองอันเนื่องจากคำจำกัดความของอักขระกลางมิฉะนั้นจะเป็น 10 ...
pLumo


5

อันเดอร์ , 9 ไบต์ 7 ไบต์

ขอบคุณKhuldraeseth na'Baryaสำหรับการแก้ปัญหาที่ได้รับการปรับปรุง!

W(SSW)S

สำหรับที่ฉันสามารถบอกได้ตอนนี้ไม่สามารถพิสูจน์ได้ตั้งแต่:

  • อักขระตัวแรกจะต้องเป็นตัวอักษรที่ไม่มี op เนื่องจากคำสั่งอื่น ๆ ทำให้เกิดข้อผิดพลาดเนื่องจาก stack ว่างเปล่ายกเว้นการเป็นวงเล็บเปิด อย่างไรก็ตามมันเป็นไปไม่ได้เพราะไม่มีวิธีที่จะส่งออกวงเล็บเปิดที่เป็นเจ้าของใน Underload
  • คุณต้องใช้อย่างน้อย 5 ตัวอักษรเพื่อเพิ่ม 3 ตัวอักษรออกไปสแต็ค
  • คุณต้องใช้ S เพื่อส่งออก

ลองออนไลน์!


ยินดีต้อนรับสู่ Code Golf SE! คุณสามารถบันทึกไบต์คู่โดยการกระโดดข้ามสำเนาเช่นดังนั้น
Khuldraeseth na'Barya

5

ภาษาการเขียนโปรแกรมของเช็คสเปียร์ , 163 153 ไบต์

-10 ไบต์ขอบคุณ Jo King

B,.Ajax,.Page,.Act I:.Scene I:.[Enter Ajax and Page]Ajax:You is
the sum ofa Big Big Big BIG BIG cat a
CAT.Speak thy.You is twice you.Speak thy!SPEAK THY!

ลองออนไลน์!

SPL คำตอบแรกของฉัน! !BBเอาท์พุท

มีคำตอบ SPL อื่นโดย Unrelated String; ในคำตอบนั้นพวกมันจะออกเฉพาะช่องว่างใน 119 ไบต์หรือตัวอักษรที่ไม่ใช่ช่องว่างใน 227 ไบต์ อันนี้มาในระหว่างและยังส่งออกอักขระที่ไม่ใช่ช่องว่าง

ใช้สองเทคนิคที่นี่:

  1. !.!25+1.
  2. Doubling 33 ให้ 66, codepoint ของBดังนั้นชื่อการเล่นคือBและฉันต้องการ "ใหญ่" ที่สองเป็น "ใหญ่" ซึ่งทำงานได้เนื่องจาก SPL นั้นไม่ตรงตามตัวพิมพ์ใหญ่ - เล็ก

ตั้งแต่ฉันต้องการเงินทุนBและเครื่องหมายอัศเจรีย์ในตอนท้ายฉันจึงตัดสินใจให้อาแจ็กซ์ตะโกนดังขึ้นและดังขึ้นในที่เกิดเหตุ


4

CJam , 7 ไบต์

'@'' _@

ลองออนไลน์!


4
0 1 0ค่อนข้างแน่ใจว่าสั้นกว่าและมีอักขระสามตัวที่แตกต่างกัน (ฉันไม่ต้องการ repost แนวทาง Jelly ของฉัน: P)
Erik the Outgolfer

1
@EriktheOutgolfer แม้ว่า! แต่นั่นก็เหมือนกับคำตอบของคุณดังนั้นฉันจะทิ้งเรื่องนี้ไว้เหมือนเดิม
Luis Mendo

2
ใช่นั่นเป็นเหตุผลที่ฉันแสดงความคิดเห็นไม่ต้องการโพสต์สิ่งเดียวกันสองครั้ง (อืม ... นี่อาจเป็นคำตอบที่ดีที่สุดสำหรับหลาย ๆ ภาษา) อย่างไรก็ตามคุณอาจใช้ที่อื่นด้วย!
Erik the Outgolfer

4

Befunge-93 , 7 bytes

.",  @0

ลองออนไลน์!

คำอธิบาย

ผลผลิตคือ 0 .

.       pop value (0) from stack, output as number with a trailing space
 "      toggle string mode, wraps around and pushes every char to the stack
  ,     pop value (".") from stack, output as character 
        spaces are no-ops
     @  end the program
      0 trailing 0 to match the output

4

APL (Dyalog Unicode) , 5 4 ไบต์

โปรแกรมเต็มรูปแบบ

โซลูชันที่น่าเบื่อจากJ.Sallé:

1231

พิมพ์หมายเลขนั้น ทางออกที่น่าสนใจมากขึ้น:

010E1

ลองออนไลน์!

APL ละเว้นค่าศูนย์นำหน้าดังนั้นนี่เป็นรูปแบบที่ปรับขนาดสำหรับ 10 ×10¹ = 100


4

พ่อครัวขนาด 447 ไบต์

Last Middle First Milkshake.

This recipe prints its last, middle and first character.
You could also use it to make a milkshake. 

Ingredients.
76 ml milk
32 ml chocolate syrup
46 teaspoons vanilla ice cream

Method.
Liquefy vanilla ice cream.
Put the milk into 1st mixing bowl.
Put the chocolate syrup into 1st mixing bowl.
Put the vanilla ice cream into 1st mixing bowl.
Pour contents of the 1st mixing bowl into the 1st baking dish.

Serves 1.

ลองออนไลน์!

ส่งร้ายแรง 196 177 ไบต์

ขอบคุณ A__

R.

Ingredients.
82 l a
103 l b
46 l c

Method.
Put a into mixing bowl.
Put b into mixing bowl.
Put c into mixing bowl.
Pour contents of mixing bowl into baking dish.

Serves 1.

ลองออนไลน์!


การได้เห็นรายการเชฟทำให้ฉันสงสัยว่าอะไรคือขั้นต่ำที่สุดสำหรับมัน
bigyihsuan

@bigyihsuan ดูการแก้ไขของฉัน
user24343

คุณสามารถลบ "the" ทั้งหมดและทำให้โปรแกรมยังคงทำงานได้
A _

ฉันสร้างโปรแกรมที่ใช้งานได้ (177 bytes)
A _

4

Python 3, 19 ไบต์ 13 ไบต์


print( ')(')

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

ขาออก: )(\n

ลองออนไลน์


1
ทั้งนี้ขึ้นอยู่กับว่ากฎการทำงานของผมอาจจะมี 13 ไบต์เล่นกับคำตอบของคุณ: `พิมพ์ ( ") (")` หมายเหตุมีเส้นใหม่เหนือprintและช่องว่างภายในหลังprint ")("เอาท์พุท: )( กับบรรทัดใหม่ในตอนท้าย
Hoog

ขอขอบคุณลดลงถึง 13 ไบต์! เนื่องจากคำถามหมายถึงช่องว่างโดยเฉพาะ แต่ไม่ใช่การขึ้นบรรทัดใหม่ฉันจะถือว่าการขึ้นบรรทัดใหม่เป็นendพารามิเตอร์เริ่มต้นของฟังก์ชั่นการพิมพ์ไม่นับ
jaaq

สิ่งนี้จะพิมพ์บรรทัดใหม่ที่ตามมา แต่ไม่ได้คำนึงถึง
_

ไม่แน่ใจว่าบรรทัดใหม่นับเป็นช่องว่างหรือไม่ แต่ฉันเพิ่มรุ่นที่ 2 และ 13 ไบต์ด้วย
jaaq

1
ใช่การขึ้นบรรทัดใหม่ถือเป็นช่องว่างเช่นเดียวกับแท็บและช่องว่างในหมู่คนอื่น
โจคิง

4

ช่องว่าง , 31 29 ไบต์

[S aS S T   S S S S S N
_Push_32][S N
S _Duplicate_32][S N
S _Duplicate_32][T  N
S S _Print_as_character][T  N
S S _Print_as_character][T  N
S S _Print_as_character]

-2 ไบต์ขอบคุณที่@RobinRyder

เพิ่มตัวอักษรS(ช่องว่าง), T(แท็บ) และN(บรรทัดใหม่) เป็นการเน้นเท่านั้น
[..._some_action]เพิ่มเป็นคำอธิบายเท่านั้น

ลองใช้ออนไลน์ (ด้วยช่องว่างดิบแท็บและบรรทัดใหม่เท่านั้น)

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



3

MathGolf , 5 4 ไบต์

1231

-1 ไบต์โดยใช้วิธีแก้ปัญหาเล็กน้อยที่นำเสนอโดย@ErikTheOutgolferในคำตอบ Jelly ของเขาซึ่งทำงานได้กับภาษาใด ๆ ที่มีเอาต์พุตโดยนัยโดยไม่ขึ้นบรรทัดใหม่

ลองออนไลน์

คำตอบ5 ไบต์ดั้งเดิม:

ùù xx

x ùเอาท์พุท

ลองออนไลน์

คำอธิบาย:

ùù x   # Push 3-char string "ù x"
    x  # Reverse it to "x ù"
       # (output the entire string joined together implicitly without trailing newline)

3

Brain-Flakขนาด 11 ไบต์

(((())))

ลองออนไลน์!

คำอธิบาย

เราต้องใส่ 3 สิ่งลงบนสแต็ก วิธีที่เร็วที่สุดที่จะทำคือวาง 3 1s (หรือศูนย์) บนสแต็ก ตอนนี้(รหัสจุดที่ 1) ไม่ได้ทำสิ่งใดใน Brain-Flak เราจึงสามารถเพิ่มสิ่งเหล่านี้ลงในโปรแกรมที่จุดกึ่งกลางและจุดสุดท้าย ทีนี้นี่รู้สึกโกงนิดหน่อยดังนั้นต่อไปนี้เป็นคำตอบอีกสองข้อที่ฉันคิดว่าโกงน้อย

พิมพ์วงเล็บปีกกา 31 ไบต์

( (((((()()()()()){}){}){}))())

ลองออนไลน์!

คำตอบนี้พิมพ์เครื่องหมายวงเล็บปีกกาเพื่อให้ตัวอักษรที่พิมพ์นั้นเกี่ยวข้องกับรหัสจริง ๆ มีอักขระตัวรองหนึ่งตัวเพื่อทำให้ความยาวคี่ดังนั้นเราต้องพิมพ์อักขระกลาง 1 ตัวเท่านั้น

มีเครื่องหมายวงเล็บเท่านั้น 32 ไบต์

(((()((((()(()()){}){}){}){}))))

ลองออนไลน์!

นี่คือการจัดฟันเฉพาะโปรแกรมทั้งที่มาและ (ดังนั้น) ผลลัพธ์ที่ทำขึ้นทั้งหมดของการจัดฟัน (ตัวละคร Brain-Flak จริง ๆ สนใจ)


3

AsciiDots - 9 ไบต์

.---$'.$.

เอาท์พุท: .$.

รหัสเริ่มต้นด้วย., ลงท้ายด้วยและตัวอักษรกลางเป็น. $เครื่องหมายคำพูดเดี่ยวที่อยู่ตรงกลางตั้งค่าโหมดการพิมพ์แบบจุดเพื่ออ่านตัวอักษรในสตรีมเอาต์พุตโดยตรง

เป็นไปได้ว่าสิ่งนี้อาจทำให้เล็กลง แต่ฉันเริ่มสงสัยว่ามันสามารถ เพื่อพิมพ์อักขระสามตัวต้องใช้เครื่องหมายคำพูดเดี่ยวเนื่องจากเครื่องหมายคำพูดคู่จะต้องลงท้ายด้วยสตริงเพื่อส่งออก อย่างไรก็ตามนี่หมายความว่าเครื่องหมายคำพูดเดี่ยวต้องมี) ตามด้วยอักขระสามตัวและ b) ไม่สามารถเป็นอักขระกึ่งกลางได้ เพื่อที่จะกระทืบสิ่งนี้ลงไปถึงเจ็ดไบต์ฉันกำลังพิจารณาที่จะพยายามใช้จุดเริ่มต้นของจุดเป็นหนึ่งในตัวละครที่พิมพ์ออกมา (คล้ายกับโปรแกรม quine ของ AsciiDot) อย่างไรก็ตามฉันพบว่าลำดับที่สั้นที่สุดสำหรับการพิมพ์คือ($'ซึ่งจะต้องพิมพ์อักขระสี่ตัวในช่องว่างสามหรือสามอักขระในช่องว่างสี่ ฉันยังลองใช้วิธีการทางเลือกอื่น ๆ เช่นพยายามพิมพ์ค่าจุด (ซึ่งคือ 0) เป็นหนึ่งในตัวละคร แม้ว่าอาจมีบางระบบที่ใช้งานได้ แต่ฉันพบว่ามันค่อนข้างซับซ้อนและมีขนาดใหญ่ ดังนั้นฉันคิดว่าข้างต้นเป็นทางออกที่เล็กที่สุด (ฉันจะอัปเดตหากพบบางสิ่งที่เล็กกว่า)


ยินดีต้อนรับสู่ Code Golf SE! ฉันยุ่งกับสิ่งนี้ประมาณสองสามนาทีและมาถึงข้อสรุปเดียวกับที่คุณทำ โพสต์แรกที่ดี!
Khuldraeseth na'Barya

1
ทางเลือก 9 ไบต์ - /'$'-.[newline]\.ลองออนไลน์!
Alion

3

MATLAB, 13 15ไบต์

disp(  ') d')

เอาท์พุท ) d

รุ่นก่อนหน้า (15 ไบต์, เอาต์พุตที่เข้มงวดน้อยกว่า):

'''';1;''''''''

เอาท์พุท '''


ฉันเห็นแล้วตอนนี้กังวล
ข้าวสาลี Wizard

ช่องว่างที่ต่อท้ายเอาต์พุตนี้ไม่ใช่หรือไม่
Sanchises


ใช่ ans =\n '''\nแต่ผลผลิตที่เกิดขึ้นจริง ปกติแล้วไม่ใช่ปัญหา แต่ความท้าทายนี้ดูเหมือนจะกำหนดมาตรฐานที่เข้มงวด แต่ฉันก็อาจตีความการท้าทายผิด
Sanchises

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