คำถามติดแท็ก brain-flak

ความท้าทายนี้เกี่ยวข้องกับภาษาและภาษาลึกลับ Brain-flak ที่อิงจาก Brain-Flak โปรดทราบว่าความท้าทายที่ต้องการให้คำตอบเป็นภาษาใดภาษาหนึ่งมักไม่สนับสนุน

30
สร้าง“ H” จาก“ H” ที่เล็กลง
ท้าทาย สร้างฟังก์ชั่นหรือโปรแกรมที่เมื่อได้รับจำนวนเต็มsizeทำต่อไปนี้: ถ้าsizeเท่ากับ 1 เอาต์พุต H H HHH H H ถ้าsizeมากกว่า 1 เอาต์พุต X X XXX X X โดยที่Xเอาต์พุตของโปรแกรม / ฟังก์ชั่นสำหรับsize - 1 (หากคุณต้องการคุณอาจมีกรณีฐานสอดคล้องกับ0ตราบใดที่คุณระบุในคำตอบของคุณ) รูปแบบผลลัพธ์ใด ๆ ต่อไปนี้เป็นที่ยอมรับแล้วแต่จำนวนใดจะสะดวกกว่าสำหรับคุณ: สตริงของโครงสร้างที่ต้องการพร้อมอักขระสองตัวที่แตกต่างกันซึ่งสอดคล้องกับHและspace อาร์เรย์สองมิติพร้อมโครงสร้างที่ต้องการโดยมีค่าแตกต่างกันสองค่าที่สอดคล้องกับHและspace อาร์เรย์ / รายการสตริงที่มีหนึ่งบรรทัดของเอาต์พุตในแต่ละสตริงโดยมีค่าแตกต่างกันสองค่าที่สอดคล้องกับHและspace อนุญาตให้มีช่องว่างนำหน้าตราบใดที่มีช่องว่างนำหน้าจำนวนหนึ่งคงที่ในแต่ละบรรทัด อักขระเอาต์พุตที่แตกต่างกันสองตัวสามารถขึ้นอยู่กับสิ่งที่คุณเลือกตราบใดที่อักขระเหล่านั้นแตกต่างกัน ระบุรูปแบบผลลัพธ์ที่โค้ดของคุณส่งคืน กรณีทดสอบ 1 H H HHH H H 2 H H H H HHH HHH H …
73 code-golf  ascii-art  fractal  code-golf  code-golf  string  code-golf  string  matrix  code-golf  graph-theory  maze  binary-matrix  code-golf  kolmogorov-complexity  random  code-challenge  metagolf  test-battery  brain-flak  text-processing  code-golf  matrix  code-golf  number-theory  primes  code-golf  string  matrix  code-golf  binary  bitwise  code-golf  number  factorial  floating-point  code-golf  number  sequence  code-golf  sequence  cops-and-robbers  code-golf  sequence  cops-and-robbers  code-golf  string  code-golf  math  decision-problem  number-theory  integer  code-golf  number  decision-problem  functional-programming  code-golf  array-manipulation  matrix  code-golf  string  classification  string  code-challenge  binary  compression  decode  code-golf  string  string  code-challenge  balanced-string  encode  code-golf  number-theory  integer  base-conversion  code-golf  math  number-theory  geometry  abstract-algebra  code-golf  array-manipulation  sorting  optimization  code-golf  math  geometry  image-processing  generation  code-golf  string  cops-and-robbers  repeated-transformation  grammars  cops-and-robbers  repeated-transformation  grammars  code-challenge  restricted-source  tips  source-layout  javascript  code-challenge  kolmogorov-complexity  restricted-source  code-golf  combinatorics  counting  math  fastest-code  linear-algebra  code-golf  math  permutations  matrix  linear-algebra  code-golf  string  decision-problem  restricted-source  code-golf  number  array-manipulation  subsequence  code-golf  number  array-manipulation  matrix  code-golf  brainfuck  code-golf  color  code-golf  quine  source-layout  code-golf  subsequence  code-golf  string  ascii-art  code-golf  string  ascii-art  alphabet  code-golf  decision-problem  interpreter  hexagonal-grid  halting-problem  code-golf  string  polynomials  calculus  code-golf  math  decision-problem  matrix  complex-numbers  code-golf  random  code-golf  number  arithmetic 

28
Surprise Party สำหรับ Brain-Flak
คำถามนี้เป็นส่วนหนึ่งของเกม Brain-flak Birthday ที่ออกแบบมาเพื่อฉลองวันเกิดแรกของ Brain-Flak คุณสามารถค้นหาข้อมูลเพิ่มเติมเกี่ยวกับวันเกิด Brain-Flak ของที่นี่ วันนี้เป็นวันเกิดครั้งแรกของ Brain-Flak! ดังนั้นฉันคิดว่าเราจะโยนมันเป็นงานวันเกิดเซอร์ไพรส์ ดังนั้นในการพิมพ์ภาษาที่คุณชื่นชอบ Surprise! Happy Birthday, Brain-Flak! (อนุญาตให้ใช้ช่องว่างต่อท้ายได้) เช่นเคยโปรแกรมควรจะกอล์ฟ อย่างไรก็ตามเนื่องจากโปรแกรม Brain-Flak ทำจากวงเล็บเหลี่ยมมันจะไม่นับวงเล็บใด ๆ ในแหล่งที่มาของคุณกับคุณ (ตัวละคร()[]<>{}จะไม่นับรวมกับจำนวนไบต์ของคุณ) แต่จะต้องมีความสมดุลเนื่องจากไม่ทำให้ Brain-Flak อารมณ์เสีย กฎระเบียบ นี่คือรายละเอียดของกฎ วงเล็บเหลี่ยมในแหล่งที่มาของคุณต้องสมดุล นั่นคือวงเล็บของโปรแกรมของคุณจะต้องถูกขยายด้วยไวยากรณ์ต่อไปนี้: S -> SS | (S) | [S] | <S> | {S} | E ที่Eเป็นสตริงที่ว่างเปล่า กล่าวได้ว่าสตริงที่สมดุลนั้นเป็นการรวมกันของสตริงที่สมดุลสองสตริงวงเล็บรอบสตริงที่สมดุลหรือสตริงที่ว่างเปล่า คะแนนของโปรแกรมคือจำนวนไบต์ที่ไม่ใช่วงเล็บ เป้าหมายของคุณคือลดคะแนนในภาษาที่คุณเลือก ใช้กฎมาตรฐานเพื่อให้คุณสามารถเขียนโปรแกรมที่สมบูรณ์หรือฟังก์ชั่น ในกรณีที่มีการนับจำนวนไบต์ดิบทำหน้าที่เป็นตัวแบ่งผูก …

8
Golf a Brain-Flak Integer
นัมเบอร์น่าเบื่อที่จะเป็นตัวแทนในBrain-Flak มีผู้ให้บริการ 8 ราย: () Evaluates to 1, but does not push anything on any stack [] Evaluates to an indeterminate value for the purposes of this question {} Removes the top of the stack and evaluates to it <> Switches to or back from the alternate stack and evaluates …

12
บีบอัดสะเก็ดระเบิดของสมอง
ความท้าทายนี้ถูกโพสต์เป็นส่วนหนึ่งของความท้าทาย LotMในเดือนเมษายน 2018เช่นเดียวกับวันเกิดปีที่ 2 ของ Brain-flak ฉันกำลังคิดเกี่ยวกับวิธีที่มีประสิทธิภาพมากที่สุดในการเข้ารหัสโปรแกรมสะกิดสมอง สิ่งที่ชัดเจนที่ต้องทำเนื่องจากมีอักขระที่ใช้ได้เพียง 8 ตัวเท่านั้นคือการจับคู่อักขระแต่ละตัวกับลำดับ 3 บิต นี้มีประสิทธิภาพมาก แต่ก็ยังซ้ำซ้อนมาก มีคุณสมบัติบางอย่างของรหัสสมองสะเก็ดระเบิดที่เราสามารถใช้ประโยชน์จากการเข้ารหัสให้สั้นลงได้ nilads ซึ่งถูกแสดงด้วยวงเล็บ 2 ตัวที่จับคู่กันทำหน้าที่เป็นหน่วยเดียวของข้อมูลมากกว่า 2 ถ้าเราแทนที่แต่ละวงเล็บด้วยอักขระไบต์เดียวสิ่งนี้จะทำให้การเข้ารหัสมีขนาดเล็กลงโดยไม่สูญเสียข้อมูลใด ๆ อันนี้ไม่ชัดเจน แต่ไบต์การปิดของ monads นั้นซ้ำซ้อนเช่นกัน คิดว่าคุณสามารถเดาได้ว่า'?'ตัวละครนั้นเป็นตัวแทนอะไรในตัวอย่างต่อไปนี้ {(({}?<>?<>? หากเราสมมติว่าการป้อนข้อมูลนั้นเป็นรหัสสมองที่ถูกต้องแสดงว่ามีเพียงตัวเลือกเดียวสำหรับเครื่องหมายคำถามแต่ละข้อ ซึ่งหมายความว่าเราสามารถใช้ตัวอักษรmonad อย่างใกล้ชิดเพื่อแทนวงเล็บปิดทุกอัน สิ่งนี้มีประโยชน์เพิ่มเติมในการทำให้ชุดอักขระมีขนาดเล็กซึ่งจะช่วยได้อย่างมากหากเราต้องการใช้การเข้ารหัส huffman เนื่องจากตัวละครmonad closeน่าจะเป็นตัวละครที่พบได้บ่อยที่สุดโดยมีระยะขอบที่กว้างจึงอาจเป็นเพียงบิตเดียวซึ่งมีประสิทธิภาพอย่างมหาศาล เทคนิคสองอย่างนี้จะให้เราบีบอัดโค้ดที่ทำให้สมองสะบัดผ่านอัลกอริทึมต่อไปนี้: เปลี่ยนทุกๆวงเล็บปิดของ monad |กับ หรือกล่าวอีกนัยหนึ่งให้แทนที่วงเล็บปิดทุกอันที่ไม่ได้นำหน้าด้วยการเปิดการจับคู่ด้วยแถบ ดังนั้น... (({})<(()()())>{}) จะกลายเป็น (({}|<(()()()||{}| แทนที่ nilad ทุกตัวด้วยวงเล็บปิด ดังนั้นการจับคู่วงเล็บที่ไม่มีสิ่งใดในนั้นจึงใช้การจับคู่ดังต่อไปนี้: () --> …

2
Mini-Flak Quine ที่เร็วที่สุด
Mini-Flak เป็นส่วนหนึ่งของสมอง Flakภาษาที่<>, <...>และ[]การดำเนินงานจะไม่ได้รับอนุญาต พูดอย่างเคร่งครัดจะต้องไม่ตรงกับ regex ต่อไปนี้: .*(<|>|\[]) Mini-Flak เป็นชุดย่อยที่สมบูรณ์ที่สุดของ Brain-Flak เมื่อไม่นานมานี้ฉันสามารถสร้างQuineในMini-Flakได้ แต่มันช้าเกินไปที่จะวิ่งในช่วงชีวิตของจักรวาล ดังนั้นความท้าทายของฉันต่อคุณคือทำให้ Quine เร็วขึ้น เกณฑ์การให้คะแนน ในการให้คะแนนรหัสของคุณให้@cyตั้งค่าสถานะที่ท้ายรหัสของคุณและเรียกใช้ในล่าม Ruby ( ลองใช้ออนไลน์ใช้ล่ามทับทิม) โดยใช้-dธง คะแนนของคุณควรพิมพ์ไปที่ STDERR ดังต่อไปนี้: @cy <score> นี่คือจำนวนรอบที่โปรแกรมของคุณใช้ก่อนที่จะยุติและเหมือนกันระหว่างการรัน เนื่องจากแต่ละรอบใช้เวลาประมาณเท่ากันในการรันคะแนนของคุณควรมีความสัมพันธ์โดยตรงกับเวลาที่ใช้ในการรันโปรแกรมของคุณ หาก Quine ของคุณยาวเกินไปสำหรับคุณที่จะเรียกใช้บนคอมพิวเตอร์ของคุณอย่างสมเหตุสมผลคุณสามารถคำนวณจำนวนรอบได้ด้วยมือ การคำนวณจำนวนรอบนั้นไม่ยากมาก จำนวนรอบเท่ากับ 2 เท่าของจำนวนของการเรียกใช้ monads บวกกับจำนวนของการทำงานของ nilads นี่เหมือนกับการแทนที่ nilad ทุกตัวด้วยอักขระตัวเดียวและนับจำนวนตัวอักษรทั้งหมด ตัวอย่างการให้คะแนน (()()()) คะแนน 5 เพราะมันมี 1 monad และ …

3
ยอดคงเหลือของวงเล็บ
วัตถุประสงค์ของคุณ: กำหนดสตริงของวงเล็บให้ส่งค่าระยะทางต่ำสุดของDamerau-Levenshteinเพื่อเปลี่ยนสตริงอินพุตให้เป็นสตริงที่วงเล็บมีความสมดุล อินพุต สตริงอินพุตจะมีเครื่องหมายวงเล็บเท่านั้นและไม่มีอักขระอื่น ๆ นั่นคือมันคือการรวมกันใด ๆ (){}[]<>ของตัวละครใน คุณสามารถรับอินพุตเป็นสตริงหรืออาร์เรย์ของอักขระได้ คุณไม่สามารถทำการตั้งสมมติฐานอื่น ๆ เกี่ยวกับสายป้อนได้ มันอาจจะยาวโดยพลการ (ขึ้นอยู่กับขนาดสูงสุดที่รองรับโดยภาษาของคุณ) มันอาจจะว่างเปล่าวงเล็บอาจมีความสมดุลอยู่แล้วเป็นต้น ระยะทาง Damerau-Levenshtein ระยะทาง Damerau-Levenshtein ระหว่างสองสายคือจำนวนขั้นต่ำของการแทรกการลบการแทนที่อักขระเดี่ยวและการสลับ (การสลับ) ของอักขระสองตัวที่อยู่ติดกัน เอาท์พุต เอาต์พุตควรเป็นระยะทางต่ำสุดของ Damerau-Levenshtein ระหว่างสตริงอินพุตและสตริงที่ตรงกับเครื่องหมายวงเล็บ เอาต์พุตควรเป็นตัวเลขไม่ใช่สตริงที่สมดุล เครื่องหมายวงเล็บคู่หนึ่งถือว่าเป็น "จับคู่" หากวงเล็บเปิดและปิดอยู่ในลำดับที่ถูกต้องและไม่มีอักขระอยู่ภายในเช่น () []{} หรือถ้าทุกองค์ประกอบย่อยที่อยู่ภายในนั้นถูกจับคู่ด้วย [()()()()] {<[]>} (()()) องค์ประกอบย่อยยังสามารถซ้อนกันหลายชั้นลึก [(){<><>[()]}<>()] <[{((()))}]> (ขอบคุณ @DJMcMayhem สำหรับคำจำกัดความ) กรณีทดสอบ Input Possible Balanced Output Empty Empty 0 …

9
เคล็ดลับสำหรับการเล่นกอล์ฟใน Brain-Flak
สมองสะเก็ดระเบิดเป็นภาษาทัวริง-tarpit สแต็คตามที่เขียนร่วมกันระหว่างฉันDJMcMayhemและ1000000000 ผู้ใช้บางคนมีประสบการณ์มากในวิธีที่ลึกลับของ Brain-Flak ดังนั้นฉันจึงคิดว่าเป็นความคิดที่ดีที่จะตั้งคำถามนี้เป็นวิธีสำหรับเราและหวังว่าคนอื่น ๆ จะแบ่งปันความรู้ของเรากับชุมชนและลดอุปสรรคในการเข้าใช้ภาษานี้ "ออกแบบมาให้เจ็บปวดใช้" และอาจสอนพวกเราด้วยประสบการณ์มากขึ้นด้วยเทคนิคใหม่ ๆ ดังนั้นคุณมีเคล็ดลับอะไรสำหรับการเล่นกอล์ฟในสมองที่สะบัด? ฉันกำลังมองหาความคิดที่สามารถนำไปใช้กับปัญหารหัสกอล์ฟโดยทั่วไปซึ่งอย่างน้อยค่อนข้างเฉพาะกับสมองสะบัด (เช่น "ลบความคิดเห็น" ไม่ใช่คำตอบ) กรุณาโพสต์หนึ่งเคล็ดลับต่อคำตอบ

6
ผนวกหรือเติม? ขึ้นอยู่กับ
สมองสะบัดกลายเป็นวันพรุ่งนี้ปีหนึ่ง! เพื่อเป็นเกียรติแก่วันเกิดเรามีปาร์ตี้วันเกิดสไตล์ PPCG ที่ผู้ใช้หลายคนโพสต์คำถามที่เกี่ยวข้องกับสมอง! ช่วยเราเฉลิมฉลอง! :) Brain-flak เป็นภาษาลึกลับที่ฉันเขียนซึ่งคำสั่งทั้งหมดเป็นวงเล็บเหลี่ยมและวงเล็บทั้งหมดต้องตรงกันอย่างสมบูรณ์ ในการขอยืมคำจำกัดความของตัวเอง : สำหรับวัตถุประสงค์ของการท้าทายนี้เป็น "วงเล็บ" ใด ๆ ()[]{}<>ของตัวละครเหล่านี้: เครื่องหมายวงเล็บคู่หนึ่งถือว่าเป็น "จับคู่" หากวงเล็บเปิดและปิดอยู่ในลำดับที่ถูกต้องและไม่มีอักขระอยู่ภายในเช่น () []{} หรือถ้าทุกองค์ประกอบย่อยภายในนั้นถูกจับคู่ด้วย [()()()()] {<[]>} (()()) องค์ประกอบย่อยยังสามารถซ้อนกันหลายชั้นลึก [(){<><>[()]}<>()] <[{((()))}]> สตริงถือเป็น "จับคู่อย่างสมบูรณ์" ถ้าหาก: ตัวละครทุกตัวจะเป็นตัวยึด วงเล็บแต่ละคู่มีวงเล็บเปิดและปิดที่ถูกต้องและอยู่ในลำดับที่ถูกต้อง ในการเฉลิมฉลองวันคล้ายวันเกิดครั้งแรกของสมองความท้าทายในวันนี้เกี่ยวกับการใช้ชุดวงเล็บที่ไม่สมดุล ตัวอย่างเช่น((ไม่เป็นรหัสสะเก็ดของสมองที่ถูกต้อง แต่ถ้าเราผนวก))เข้าด้วยกันมันจะกลายเป็น(())ซึ่งมีความสมดุลอย่างสมบูรณ์ ที่ทำให้การป้อนข้อมูลนี้appendable ในทำนองเดียวกัน>}ไม่ถูกต้อง แต่เราสามารถเติม{<ให้มันเพื่อทำ{<>}ซึ่งถูกต้อง นั่นทำให้อินพุตนี้สามารถเตรียมตัวล่วงหน้าได้ อินพุตบางตัวมีความซับซ้อนมากกว่าเล็กน้อย ตัวอย่างเช่น)][({ไม่สามารถใช้งานได้อย่างหมดจดโดยการผนวกหรือต่อท้าย แต่มันก็สามารถที่จะทำถูกต้องโดย prepending และท้าย[( })]ดังนั้นการป้อนข้อมูลนี้เป็นทั้งprependableและappendable สุดท้ายอินพุตบางตัวไม่สามารถสร้างรหัสที่ทำให้เกิดการสะกิดในสมองได้โดยการผนวกหรือต่อท้าย ตัวอย่างเช่น(>ไม่สามารถทำให้ถูกต้องได้ (การ<สร้างที่เตรียม<(>ไว้และการ)สร้างที่ต่อท้าย(>)ซึ่งไม่ถูกต้อง) ดังนั้นอินพุตนี้ไม่สามารถต่อท้ายหรือต่อท้ายได้ สำหรับความท้าทายในวันนี้คุณต้องเขียนโปรแกรมหรือฟังก์ชั่นที่ใช้สตริงของวงเล็บและพิจารณาว่าเป็นสตริงหรือไม่ …

20
ค้นหาการแข่งขันคร่อมครั้งแรก
นี่เป็นหนึ่งในความท้าทายที่นำไปสู่วันเกิดของ Brain-Flak ค้นหาข้อมูลเพิ่มเติมได้ที่นี่ ท้าทาย สำหรับความท้าทายครั้งนี้วัตถุประสงค์ของคุณจะได้รับการหาคู่แรกของการจับคู่วงเล็บในสตริงจับคู่ได้อย่างสมบูรณ์ของ()[]{}<>วงเล็บ ในการขอยืมคำจำกัดความของ DJMcMayhem สำหรับสตริงที่ตรงกันอย่างสมบูรณ์: สำหรับวัตถุประสงค์ของการท้าทายนี้เป็น "วงเล็บ" ใด ๆ ()[]{}<>ของตัวละครเหล่านี้: เครื่องหมายวงเล็บคู่หนึ่งถือว่าเป็น "จับคู่" หากวงเล็บเปิดและปิดอยู่ในลำดับที่ถูกต้องและไม่มีอักขระอยู่ภายในเช่น () []{} หรือถ้าทุกองค์ประกอบย่อยภายในนั้นถูกจับคู่ด้วย [()()()()] {<[]>} (()()) องค์ประกอบย่อยยังสามารถซ้อนกันหลายชั้นลึก [(){<><>[()]}<>()] <[{((()))}]> สตริงถือว่าเป็น "จับคู่อย่างสมบูรณ์" ถ้าเฉพาะในวงเล็บแต่ละคู่มีวงเล็บเปิดและปิดที่ถูกต้องในลำดับที่ถูกต้อง อินพุต ข้อมูลที่ป้อนจะประกอบด้วยสตริงที่ไม่ว่างเปล่าหรืออาร์เรย์ถ่านที่มีเฉพาะอักขระ()[]{}<>เท่านั้นและรับประกันว่าจะจับคู่อย่างสมบูรณ์ คุณสามารถป้อนข้อมูลในลักษณะที่สมเหตุสมผลใด ๆ ที่สอดคล้องกับค่าเริ่มต้นของi / o ของเรา เอาท์พุต ผลลัพธ์ของโปรแกรมหรือฟังก์ชั่นของคุณจะเป็นดัชนีของวงเล็บเหลี่ยมซึ่งปิดอันแรก ผลลัพธ์จะต้องเป็นอย่างใดอย่างหนึ่ง0หรือ1จัดทำดัชนี อีกครั้งผลลัพธ์อาจอยู่ในลักษณะที่สมเหตุสมผลใด ๆ ที่สอดคล้องกับค่าเริ่มต้นของi / o ของเรา กรณีทดสอบ Input 0-indexed 1-indexed () …

3
เมื่อชีวิตให้มะนาวคุณต้องทำน้ำมะนาว
ท้าทาย คุณจะได้รับการป้อนข้อมูลสตริงทุกคำ"Lemon"จะพบว่ามันควรจะเปลี่ยนไป"Lemonade" แต่a , dและeจะต้องยืมมาจากที่อื่นในประโยค ตัวอย่าง อินพุตตัวอย่าง: ฉันพบมะนาวเมื่อตอนเป็นเด็ก ตัวอย่างผลลัพธ์: ฉันทำน้ำมะนาวเมื่อฉันยังเด็ก The Lemonadeสร้างขึ้นโดยการขโมยตัวอักษรยกต่อไปนี้จากต้นฉบับ ฉัน Foun dน้ำมะนาว WH E n ผมเป็นเด็ก นี่เป็นเพียงตัวอย่างหนึ่งที่เป็นไปได้คือ "e", "d" และ "a" ซึ่งอาจถูกนำมาจากที่ใดก็ได้ ( ยกเว้นจากคำว่าlemonแน่นอน ) ความคิดเห็น •หากมีไม่เพียงพอe, aหรือds คุณส่งออกสิ่งที่สามารถทำด้วยตัวอักษรจะต้องได้รับ ตัวอย่างเช่นการป้อนข้อมูลbdblemonจะส่งออกbblemond • lemonข้อความอาจไม่ได้เป็นแบบสแตนด์อโลน (เว้นวรรคในแต่ละด้าน) ตัวอย่างเช่นคุณอาจมีคำlemonsบางคำในอินพุตและเอาต์พุตควรเป็นlemonades •อินพุตอาจมีจำนวนlemons ใด ๆแม้แต่ 0 lemonวินาที (ซึ่งในกรณีนี้เอาต์พุตจะเหมือนกับอินพุต) •คุณสามารถทำน้ำมะนาวของคุณด้วยตัวอักษรตัวพิมพ์ใหญ่และตัวพิมพ์เล็กตัวอย่างเช่นleMonอาจกลายเป็นleMonadeและการadeยืมสามารถเป็นกรณีใด ๆ (ดังนั้นมันอาจจะกลายเป็นleMonADe) กรณีของจดหมายที่คุณยืมต้องอยู่ในสภาพเดิมเมื่อคุณยืม (ตัวอย่างอินพุต -> เอาต์พุตhe …
21 code-golf  string  code-golf  parsing  internet  stack-exchange-api  code-challenge  kolmogorov-complexity  restricted-source  brain-flak  python  logic  pyth  code-golf  string  search  optimized-output  code-golf  tips  language-design  golfing-language  code-golf  tips  language-design  code-golf  number  sorting  pi  code-golf  math  number  code-golf  string  balanced-string  classification  brain-flak  code-golf  math  number-theory  decision-problem  code-golf  tips  code-golf  number  sequence  code-golf  balanced-string  brain-flak  code-golf  math  sequence  arithmetic  fibonacci  code-golf  math  parsing  code-golf  string  keyboard  code-golf  code-golf  string  source-layout  whitespace  code-golf  math  rational-numbers  code-golf  string  code-golf  string  code-golf  math  sequence  code-golf  number  floating-point  code-golf  string  decision-problem  subsequence  code-golf  string  kolmogorov-complexity  code-golf  string  permutations  balanced-string  brain-flak  code-golf  string  math  number  code-golf  string  primes  cipher  code-golf  string  ascii-art  chemistry  code-golf  ascii-art  grid  counting  code-golf  math  arithmetic  integer  code-golf  number  kolmogorov-complexity  code-golf  ascii-art  kolmogorov-complexity  sequence  metagolf  brain-flak  code-golf  ascii-art  kolmogorov-complexity  code-golf  string  whitespace 

3
เกมที่มีสัดส่วนของอะตอม
งานของคุณสร้างบอทที่เล่นAtomasด้วยคะแนนสูงสุด เกมทำงานอย่างไร: gameboard เริ่มต้นด้วยแหวน 6 "อะตอม" ที่มีจำนวนตั้งแต่การ1 3คุณสามารถ "เล่น" อะตอมระหว่างสองอะตอมหรืออะตอมอื่นขึ้นอยู่กับอะตอมเอง คุณสามารถมีอะตอมปกติหรืออะตอมพิเศษ อะตอมปกติ: คุณสามารถเล่นอะตอมปกติระหว่างสองอะตอมที่มีอยู่บนกระดาน คุณเริ่มต้นด้วยอะตอมในช่วง1 to 3แต่ช่วงเพิ่มขึ้น 1 ทุกๆ 40 การเคลื่อนไหว (ดังนั้นหลังจาก 40 การเคลื่อนไหวช่วงจะกลายเป็น2 to 4) หากมีอะตอมบนกระดานที่ต่ำกว่าช่วงมันจะมี1 / no. of atoms of that number on the boardโอกาสเกิดการวางไข่ สมมติว่าคุณต้อง2เล่นและบอร์ดมีลักษณะดังนี้: 1 1 2 1 สถานที่ Let 's ไปทางขวาของ21 กระดานตอนนี้กลายเป็น: 1 1 2 1 …
21 code-challenge  game  code-golf  combinatorics  permutations  code-golf  image-processing  brainfuck  encode  steganography  code-golf  ascii-art  code-golf  ascii-art  kolmogorov-complexity  code-golf  ascii-art  fibonacci  code-golf  string  code-golf  sorting  popularity-contest  statistics  code-golf  ascii-art  kolmogorov-complexity  code-golf  code-golf  ascii-art  tic-tac-toe  code-golf  string  code-challenge  classification  test-battery  binary-matrix  code-golf  math  arithmetic  code-golf  ascii-art  random  code-golf  string  code-golf  number  binary  bitwise  code-golf  number  arithmetic  code-golf  math  ascii-art  code-golf  string  ascii-art  code-golf  string  ascii-art  code-golf  string  code-golf  counting  code-golf  number  binary  bitwise  decision-problem  code-golf  array-manipulation  code-golf  tips  brain-flak  code-challenge  quine  source-layout  code-generation  code-golf  linear-algebra  matrix  abstract-algebra  binary-matrix  code-golf  string  palindrome  code-golf  puzzle-solver  sudoku  code-golf  ascii-art  code-golf  graphical-output  internet  code-golf  ascii-art  kolmogorov-complexity  code-golf  math  code-golf  clock 

9
สะเก็ดที่สาม!
ความท้าทายนี้ถูกโพสต์เป็นส่วนหนึ่งของความท้าทาย LotM เมษายน 2018 Brain-Flakเป็นภาษา turing-tarpit ซึ่งได้รับชื่อเสียงอย่างมากใน PPCG ความทรงจำของภาษานั้นประกอบด้วยสองกอง แต่มีการค้นพบสแต็กที่สามที่ "ซ่อน" โดยWh e at Wizardซึ่งนำไปสู่วิธีคิดใหม่ที่น่าสนใจในการคิดโปรแกรม Brain-Flak แล้วจะให้การมองเห็นที่ดีกว่านั้นในสแต็คที่สามได้อย่างไร มาสร้างภาษาที่สแต็กที่สามมีการจดจำที่สมควรได้รับ! นี่ฉันนำเสนอคุณสาม Flak ภาษา ใน Third-Flak มีเพียงหนึ่งกองที่เรียกว่ากองที่สาม ผู้ประกอบการทำงานในกองที่สามในลักษณะเดียวกับที่พวกเขาทำใน Brain-Flak แต่ที่นี่ไม่มี[], {}, <>nilads และไม่มี{...}monad (เพื่อให้ตัวละครเท่านั้นที่ยอมรับในโปรแกรมที่สาม Flak มี()[]<>) นี่คือสิ่งที่ผู้ประกอบการแต่ละรายทำ (ตัวอย่างจะได้รับการแทนสแต็กที่สามพร้อมกับรายการที่องค์ประกอบสุดท้ายคือด้านบนของสแต็ก): ()เป็นโอเปอเรเตอร์สองอักขระเพียงตัวเดียวใน Third-Flak เพิ่มด้านบนของสแต็กที่สามโดย 1 ตัวอย่าง: [1,2,3]→[1,2,4] (, [, <: ทุกวงเล็บเปิดที่ไม่ได้รับการคุ้มครองโดยกรณีก่อนหน้านี้ดัน0ไปกองที่สาม ตัวอย่าง: [1,2,3]→[1,2,3,0] )ดึงองค์ประกอบสองอย่างจากสแต็กที่สามและผลักกลับผลรวมของพวกเขา ตัวอย่าง: [1,2,3]→[1,5] …

8
เขียนล่ามคลาสสิคสุดมันส์!
Brain-Flak (ข้ามระหว่าง Brainf ** k และ Flak-Overstow) เป็นภาษาลึกลับแบบกองซ้อน เนื่องจากความท้าทายนี้ถูกโพสต์ภาษาได้พัฒนาและปรับปรุง แต่การแก้ไขครั้งแรกของภาษานี้เป็นที่รู้จักกันในชื่อ "brain-flak classic" คุณต้องเขียนโปรแกรมหรือฟังก์ชั่นที่ใช้สตริงของรหัสคลาสสิกของ Brain-Flak และประเมินผล นอกจากนี้ยังจะใช้รายการจำนวนเต็ม (เป็นไปได้ที่ว่างเปล่า) มีอินพุตสำหรับโปรแกรม Brain-Flak classic ภาษา Brain-Flak มีสองกองเรียกว่า 'left' และ 'right' สแต็คที่ใช้งานเริ่มต้นที่ด้านซ้าย หากสแต็กที่ว่างเปล่าถูกตอกหรือแอบดูมันจะส่งคืน 0 ไม่มีตัวแปร เมื่อโปรแกรมเริ่มขึ้นแต่ละอินพุตจะถูกพุชไปยังสแต็กที่แอ็คทีฟตามลำดับ (เพื่อให้อินพุตล่าสุดอยู่ด้านบนของสแต็ก) อักขระที่ใช้ได้ในโปรแกรม Brain-Flak ()[]{}<>เท่านั้นและต้องมีความสมดุลเสมอ หากมีอักขระที่ไม่ถูกต้องหรือวงเล็บไม่ตรงกันคุณจะได้รับพฤติกรรมที่ไม่ได้กำหนด ทุกอย่างถูกต้อง : มีสองประเภทของฟังก์ชั่นNiladsและMonads niladเป็นฟังก์ชั่นที่ใช้เวลา 0 ขัดแย้ง นี่คือทั้งหมดของ nilads: () +1 [] -1 {} ป็อปสแต็คที่ใช้งานอยู่ …

28
คำนวณโมดูลัสของผกผัน
งาน: มูลค่าการส่งออกสำหรับxที่สองค่าที่กำหนดa mod x = ba,b การสันนิษฐาน aและbจะเป็นจำนวนเต็มบวกเสมอ จะไม่มีทางแก้สำหรับ x หากมีหลายวิธีให้เอาท์พุทอย่างน้อยหนึ่งวิธี หากไม่มีวิธีแก้ปัญหาให้เอาท์พุทอะไรหรือบ่งชี้ว่าไม่มีวิธีแก้ไข อนุญาตให้ใช้บิวด์อิน (ไม่สนุกเท่าวิธีการทางคณิตศาสตร์อื่น ๆ ) เอาต์พุตเป็นจำนวนเต็มเสมอ ตัวอย่าง A, B >> POSSIBLE OUTPUTS 5, 2 >> 3 9, 4 >> 5 8, 2 >> 3, 6 6, 6 >> 7, (ANY NUMBER > 6) 8, 7 >> NO SOLUTION 2, …
18 code-golf  math  number-theory  code-golf  number  integer  code-golf  string  code-golf  music  code-golf  arithmetic  array-manipulation  decision-problem  code-golf  math  rational-numbers  code-golf  code-golf  graphical-output  hardware  code-golf  math  number  code-golf  string  parsing  natural-language  code-golf  tips  brain-flak  code-golf  graph-theory  code-golf  number  polynomials  king-of-the-hill  code-golf  ascii-art  kolmogorov-complexity  animation  king-of-the-hill  code-golf  tips  code-golf  ascii-art  code-golf  string  array-manipulation  data-structures  code-golf  math  number  code-golf  string  base-conversion  binary  code-golf  decision-problem  graph-theory  code-golf  math  polynomials  code-golf  kolmogorov-complexity  physics  code-golf  sequence  number-theory  code-golf  math  integer-partitions  code-golf  array-manipulation  random  permutations  code-golf  string  decision-problem 

1
Metagolf การคูณ Brainflak
คำถามนี้เป็นความท้าทายครั้งแรกของ Brain-Flak Birthday ที่ออกแบบมาเพื่อฉลองวันเกิดครั้งแรกของ Brain-Flak! คุณสามารถหาข้อมูลเพิ่มเติมเกี่ยวกับวันเกิดของ Brain-Flak ได้ที่นี่ ฤดูร้อนครั้งที่แล้วเรามีBrain-flak Integer Metagolfและคำตอบที่สร้างขึ้นมีประโยชน์มากต่อชุมชน Brain-Flak ตั้งแต่นั้นมา สิ่งสำคัญที่ทำให้ Integer Metagolf มีประสิทธิภาพนั้นเป็นเทคนิคที่เรียกว่าการเข้ารหัสแบบการคูณ ในการคูณรันไทม์ Brain-Flak มีราคาแพงมาก ตัวอย่างการคูณที่รู้จักกันสั้นที่สุดคือ: ({}<>)({<({}[()])><>({})<>}{}<><{}>) ค้นพบโดยMegatom อย่างไรก็ตามมีวิธีง่าย ๆ ในการสร้างการคูณเวลาคอมไพล์ ตัวอย่างเช่นรหัสต่อไปนี้จะคูณด้วย 5: (({})({})({})({}){}) ลองออนไลน์! วิธีนี้ใช้งานได้เนื่องจากนิพจน์ที่ต่อเนื่องกันถูกรวมเข้าด้วยกัน แต่ละคน({})ไม่ทำอะไรเลยกับสแต็ก ( {}จะปรากฏขึ้นแล้ว(..)ดันกลับไปด้านหลัง) และประเมินว่าอะไรก็ตามที่อยู่ด้านบนสุดของสแต็ก นิพจน์เหล่านี้ทั้งหมดรวมกันได้มากถึงห้าเท่าสิ่งที่อยู่ด้านบนสุดของสแต็ก สำหรับnนิพจน์สตริงต่อไปนี้จะสร้างตัวอย่างที่จะคูณด้านบนของสแต็กด้วยn: "("+"({})"*(n-1)+"{})" สิ่งนี้ทำงานโดยการnแสดงออกที่ประเมินทั้งหมดไปด้านบนของสแต็ค อันแรกn-1ไม่ได้เปลี่ยนแปลงอะไรเลยและอันสุดท้ายจะเอาส่วนบนสุดของสแต็กออกมาก่อนกด สำหรับหมายเลขคอมโพสิตคุณสามารถโยงนิพจน์ขนาดเล็กหลาย ๆ ตัวเข้าด้วยกันเพื่อบันทึกไบต์ ตัวอย่างเช่นคุณสามารถคูณ 25 ด้วยการคูณด้วย 5 สองครั้ง: (({})({})({})({}){})(({})({})({})({}){}) มันค่อนข้างง่ายและสำหรับตัวเลขบางตัวก็ใช้งานได้ดี …

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