ความท้าทายของคุณคือการเปลี่ยนข้อความที่ป้อนเป็นรหัสสมองที่จะส่งออกข้อความ
บทเรียนที่นำมาจากที่นี่ได้รับอนุญาตที่นี่
Brain-Flak มีสองกองเรียกว่า 'left' และ 'right' สแต็คที่ใช้งานเริ่มต้นที่ด้านซ้าย หากสแต็กเปล่าถูกเปิดใช้งานมันจะคืนค่า 0 นั่นคือมัน ไม่มีตัวแปรอื่น ๆ เมื่อโปรแกรมเริ่มขึ้นอาร์กิวเมนต์บรรทัดคำสั่งแต่ละรายการจะถูกส่งไปยังสแต็กที่ใช้งานอยู่
อักขระที่ใช้ได้เฉพาะในโปรแกรม Brain-Flak คือ()[]{}<>
และต้องมีความสมดุลเสมอ : มีสองประเภทของฟังก์ชั่นNiladsและMonads niladเป็นฟังก์ชั่นที่ใช้เวลา 0 ขัดแย้ง นี่คือทั้งหมดของ nilads:
()
หาค่าเป็นหนึ่ง[]
หาค่าสูงสุดของสแต็กปัจจุบัน{}
ป็อปสแต็คที่ใช้งานอยู่ หาค่า popped<>
สลับสแตกที่ใช้งานอยู่ หาค่าเป็นศูนย์
สิ่งเหล่านี้จะถูกรวมเข้าด้วยกันเมื่อถูกประเมิน ดังนั้นหากเรามี '3' อยู่ด้านบนของกองซ้อนที่ใช้งานอยู่ตัวอย่างนี้:
()(){}
จะประเมิน1 + 1 + active.pop()
ว่าจะประเมินค่าใดถึง 5
พระใช้เวลาหนึ่งอาร์กิวเมนต์ชิ้นหนึ่งของรหัส Brain-Flak นี่คือพระทั้งหมด:
(n)
กด 'n' บนสแต็กที่ใช้งานอยู่[n]
หาค่าเป็นลบ 'n'{foo}
ในขณะที่ศูนย์ไม่ได้อยู่ด้านบนสุดของสแต็กให้ทำ foo<foo>
ดำเนินการ foo แต่ประเมินเป็น 0
ฟังก์ชั่นเหล่านี้จะส่งกลับค่าภายในของพวกเขาดังนั้น
(()()())
จะกด 3 แต่
((()()()))
จะผลักดัน 3 สองครั้ง
ความ{}
ประสงค์จะประเมินผลรวมของการวิ่งทั้งหมด ดังนั้นถ้าเรามี '3' และ '4' ที่ด้านบนของสแต็ก:
{{}}
จะประเมินเป็น 7
เมื่อโปรแกรมดำเนินการเสร็จแล้วแต่ละค่าที่เหลืออยู่บนสแต็กที่ใช้งานจะถูกพิมพ์ด้วยบรรทัดใหม่ระหว่าง ค่าในกองอื่น ๆ จะถูกละเว้น
กฎระเบียบ
- คุณอาจคิดว่า Brain-Flak นั้นกำลังทำงานโดยมี ascii out (
-A
) - รหัสที่สะเก็ดสมองต้องไม่ป้อนข้อมูล
- ใช้กฎมาตรฐานทั้งหมด
- รหัสจะต้องทำงานภายใน 1 นาทีสำหรับการป้อนข้อมูลใด ๆ สูงสุด 1024 ไบต์บน TIO (หากไม่มีเอาต์พุต TIO ให้จัดหาล่ามและฉันจะเรียกใช้บนเครื่องของฉัน (เครื่องของฉันควรจะเข้าใกล้ TIO))
- คุณต้องสนับสนุนการป้อนความยาวโดยพลการ
- คุณอาจรับข้อมูลจากไฟล์
- ไม่อนุญาตการเพิ่มประสิทธิภาพสำหรับกรณีทดสอบ
- จำเป็นต้องมีเอาต์พุตที่กำหนดไว้
- โปรแกรมไม่จำเป็นต้องสะอาดหมดจด
กรณีทดสอบ (ลองใช้รหัสของคุณกับข้อความการให้คะแนนจริงจะออกใน 1-2 สัปดาห์หลังจากการโพสต์ความท้าทาย)
ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
The meaning of brain-flak is to flak your brain with pain.
`1234567890-=qwertyuiop[]\asdfghjkl;'zxcvbnm,./~!@#$%^&*()_+QWERTYUIOP{}|ASDFGHJKL:"ZXCVBNM<>?
To be, or not to be, that is the question:
Whether 'tis nobler in the mind to suffer
The slings and arrows of outrageous fortune,
Or to take arms against a sea of troubles
And by opposing end them. To die-to sleep,
No more; and by a sleep to say we die
<your brain-flak code here>
The fitness pacer test is a multi stage test. Avacado Avacado Avacadad Avacadad carrot.bat carrot.jar carrot.carrot Quack Quack Quack Quack Quack Quack Quack Quack Quack downgoat doawngoat down down gaot
This challenge came from a online program that turned text into brain-fuck. However brain-fuck has limitations and it is not nearly as cool as brain-flak. I really am looking forward to cool programs :) I am glad you took the time to read this and look forward to seeing your answer.
การชนะ
ในการชนะคุณจะต้องให้ความยาวรวมของรหัสสะเก็ดสมองที่กำหนดโดยแต่ละกรณีทดสอบซึ่งจะเปิดตัว 1-2 สัปดาห์หลังจากวันที่โพสต์ ความยาวรวมที่สั้นที่สุดชนะ
บันทึก!!!!!!:
นี่ไม่ใช่โค้ดกอล์ฟความยาวของโค้ดจะไม่ส่งผลกระทบต่อคะแนนสุดท้ายของคุณ แต่อย่างใด การทำโค้ดที่อ่านง่ายสะอาดเป็นที่นิยม ขอบคุณ!
กรณีทดสอบ
<your brain-flak code here>
ต่ำกว่า 1,000 จะได้รับรางวัล ซึ่งฉันไม่สามารถโพสต์สำหรับวันอื่นอ๊ะ ไม่ได้สังเกตว่ามันใหม่ขนาดไหน