คำถามติดแท็ก brainfuck

ความท้าทายนี้เกี่ยวข้องกับภาษา BF โปรดทราบว่าความท้าทายที่ต้องใช้คำตอบในภาษาใดภาษาหนึ่งนั้นเป็นสิ่งที่ท้าทาย

24
ความท้าทาย ogl-edocf
อินพุต ไม่ว่างเปล่าสตริงสับประกอบด้วยอักขระ ASCII ในช่วง ][ 32..126 ][32..126][32..126] เอาท์พุต เอาต์พุตได้มาจากการใช้การหมุนต่อเนื่องกับสตริงอินพุต สำหรับแต่ละตัวอักษร ( [a-zA-Z]) ในสตริงอินพุตให้เปลี่ยนจากซ้ายไปขวา: ถ้าตัวอักษรเป็นตัวพิมพ์ใหญ่หมุนตัวอักษรทั้งหมดก่อนโดยตำแหน่งเดียวไปทางซ้าย หากตัวอักษรเป็นตัวพิมพ์เล็กให้หมุนตัวอักษรทั้งหมดก่อนโดยตำแหน่งเดียวไปทางขวา ตัวอย่าง อินพุต: "Cb-Ad" อักษรตัวแรกคือ " C " เราควรหมุนไปทางซ้าย แต่ไม่มีตัวละครอยู่ก่อนหน้านี้ " C " ดังนั้นจึงไม่มีอะไรจะหมุน ตัวอักษรถัดไปคือ " b " เราหมุน " C " ไปทางขวา เนื่องจากเป็นอักขระตัวเดียวจึงไม่เปลี่ยนแปลง อักขระ " - " ไม่เรียกใช้การหมุนใด ๆ เนื่องจากไม่ใช่ตัวอักษร ตัวอักษรถัดไปคือ " A " เราหมุน …
22 code-golf  string  code-golf  string  code-golf  string  parsing  brainfuck  code-challenge  python  hello-world  error-message  code-golf  string  code-golf  number  integer  counting  subsequence  code-golf  string  cipher  code-golf  array-manipulation  arithmetic  integer  matrix  code-golf  math  sequence  code-golf  restricted-source  pi  popularity-contest  cops-and-robbers  polyglot  popularity-contest  cops-and-robbers  polyglot  code-golf  file-system  king-of-the-hill  code-golf  number  sequence  integer  rational-numbers  string  code-challenge  source-layout  code-golf  ascii-art  king-of-the-hill  code-golf  array-manipulation  sorting  code-golf  string  code-golf  restricted-source  source-layout  tips  math  code-challenge  permutations  logic-gates  code-golf  number  random  integer  code-golf  math  code-golf  math  number  decision-problem  king-of-the-hill  python  board-game  code-challenge  brainfuck  busy-beaver  code-golf  number  cops-and-robbers  polyglot  obfuscation  answer-chaining  code-golf  number  integer  conversion  code-golf  string  parsing  code-golf  ascii-art  number  king-of-the-hill  javascript  code-golf  source-layout  radiation-hardening  code-golf  array-manipulation  matrix  code-golf  string  graph-theory  code-golf  array-manipulation  decision-problem  code-golf  string  ascii-art  code-golf  string  code-golf  array-manipulation 

4
ลดขนาด Brainfuck
ความท้าทายของคุณคือการย่อขนาดโค้ดBrainfuckตามกฎเหล่านี้: +-><[].,อะไรที่ลบไม่ได้เป็นหนึ่ง สำหรับกลุ่มที่ต่อเนื่องกัน+หรือ-ตัวอักษรใด ๆหากจำนวน+s และ-s เท่ากันให้ลบออก ทำเช่นเดียวกันกับข้างต้น แต่ด้วยและ>< ลบลำดับของ+-><อักขระหากไม่ทำอะไรเลย +>-<->+<ตัวอย่างเช่นคุณควรลบ (นี่อาจเป็นสิ่งที่ยุ่งยากและยากที่สุดที่จะนำมาใช้) ตรวจสอบให้แน่ใจว่าคุณไม่ได้รับผลบวกที่ผิดพลาดเช่น+>-<+>-<ซึ่งไม่ควรลบออก กรณีทดสอบ: อินพุต ++++++[->++++++<]>. prints a $ [-]< resets tape >,[>,]<[.<] reverses NUL terminated input string ++-->><< does nothing เอาท์พุต ++++++[->++++++<]>.[-],[>,]<[.<] อินพุต Should disappear: ++>>+<+++<->-->-<<->-< Should disappear: +++>-<--->+< Should stay: +++>-<+>---< เอาท์พุต +++>-<+>---< คุณอาจยอมรับอินพุตและเอาต์พุตอย่างไรก็ตามคุณต้องการ - stdin / stdout, ฟังก์ชั่น …

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 

14
นี่เป็นตัวเลขสามเหลี่ยมที่ถูกตัดทอนหรือไม่?
ลำดับ OEIS ที่เกี่ยวข้อง: A008867 หมายเลขสามเหลี่ยมที่ถูกตัดทอน คุณสมบัติทั่วไปของตัวเลขสามเหลี่ยมคือพวกเขาสามารถจัดเรียงในรูปสามเหลี่ยม ตัวอย่างเช่นใช้ 21 และจัดเป็นสามเหลี่ยมของos: โอ อู OOO oooo ooooo oooooo ลองกำหนด "การตัดปลาย:" การตัดสามเหลี่ยมขนาดเดียวกันจากแต่ละมุม วิธีหนึ่งในการตัดทอน 21 มีดังนี้: . . . OOO oooo . ooo . . oo . (รูปสามเหลี่ยม.ถูกตัดจากต้นฉบับ) oเหลืออีก12 วินาทีดังนั้น 12 จึงเป็นเลขสามเหลี่ยมที่ถูกตัดทอน งาน งานของคุณคือการเขียนโปรแกรมหรือฟังก์ชั่น (หรือเทียบเท่า) ที่ใช้จำนวนเต็มและส่งกลับ (หรือใช้วิธีการส่งออกมาตรฐานใด ๆ ) ไม่ว่าจะเป็นตัวเลขเป็นจำนวนสามเหลี่ยมตัดทอน กฎระเบียบ ไม่มีช่องโหว่มาตรฐาน อินพุตเป็นจำนวนเต็มที่ไม่เป็นลบ การตัดไม่สามารถมีความยาวด้านเกินกว่าครึ่งหนึ่งของสามเหลี่ยมเดิม (เช่นการตัดไม่สามารถซ้อนทับกันได้) …
20 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 

1
Bootloader golf: Brainf ***
สร้าง bootloader ที่รันโปรแกรม Brainfuck ที่กำหนด นี่คือโค้ดกอล์ฟดังนั้นโปรแกรมที่มีจำนวนไบต์น้อยที่สุดจะเป็นผู้ชนะ เป็น bootloader ขนาดของโปรแกรมจะถูกนับเป็นไบต์ที่ไม่เป็นศูนย์ในรหัสที่คอมไพล์ brainfuck 30000 8-bit ล้นเซลล์ พอยน์เตอร์แรปทับ หมายเหตุบางประการเกี่ยวกับการทำงาน: ต้องอ่านอินพุตในลักษณะที่สนับสนุนอักขระ ASCII ที่พิมพ์ได้ทั้งหมดอย่างถูกต้อง การกดแป้นอื่น ๆ อาจแทรกตัวอักษรใดก็ได้หรือไม่ทำอะไรเลย การอ่านอินพุตของผู้ใช้จะต้องเป็นตัวอักษรบัฟเฟอร์ไม่ใช่บัฟเฟอร์บรรทัด การอ่านอินพุตของผู้ใช้ต้องสะท้อนก้องอักขระ ผลลัพธ์จะต้องเป็นไปตามโค้ดเพจ 437หรือโค้ดเพจเริ่มต้นของอะแดปเตอร์ VGA ในตัวของคุณ bootloader นี่คือ bootloader x86 bootloader ลงท้ายด้วย55 AAลำดับดั้งเดิม รหัสของคุณจะต้องทำงานบน VirtualBox, Qemu หรือโปรแกรมจำลอง x86 ที่รู้จักกันดีอื่น ๆ ดิสก์ Brainfuck ที่เรียกใช้งานได้จะอยู่ที่เซกเตอร์ของดิสก์ที่สองหลังจากบูทโหลดเดอร์ของคุณซึ่งโดยปกติจะอยู่ในส่วน MBR เซกเตอร์แรกบนดิสก์ รหัสเพิ่มเติม (รหัสใด ๆ ที่มากกว่า …

1
Traceless Busy Beaver
บีเว่อร์ที่ยุ่งทั้งหมดเหล่านั้นค่อนข้างยุ่งเหยิง พวกเขาเขียนทั่วเทป ในอัตรานี้เพื่อนบ้านของเราจะหยุดให้เรายืมเทปมากมาย เราต้องการวิธีใหม่ในการเล่นเกมบีเวอร์ที่วุ่นวายซึ่งไม่ได้ทำลายทุกเทปที่เราใช้ กฎระเบียบ Brainfuck เท่านั้น เทปหน่วยความจำไม่ได้ จำกัด ทั้งสองวิธี คำสั่งอินพุตจะอ่านเสมอดังนั้นจึงสามารถใช้ล้างค่าได้000 ขีด จำกัด แหล่งที่มา 50 ไบต์ ในตอนท้ายของการดำเนินการหน่วยความจำจะต้องทั้งหมดวินาที000 คะแนนเป็นระยะทางระหว่างสถานที่เริ่มต้นชี้หน่วยความจำและสถานที่สุดท้าย - ถ้ามันใช้เวลาคำแนะนำย้ายไประหว่างพวกเขาคะแนนของคุณเป็นn สูงกว่าดีกว่า ระบุค่าที่แน่นอนหากคุณสามารถทำได้มิฉะนั้นจะให้ค่าประมาณnnnnnn ตัวอย่าง 32 ไบต์2255−12255−12^{255}-1 -[-[[>]+>+[<]>-[[>]<+<+[<]>-]]>] คำอธิบาย - Initialize the list to [255]. [ ] Repeat as long as the list is not empty. [- ] Decrement the left end. …

3
ปัญหาลูป Brainf * ck
ฉันมีปัญหากับไซเบอร์คลับที่ขอให้คุณพิมพ์: ZYXWVUTSRQPONMLKJIHGFEDCBA@?>=<;:9876543210/.-,+*)('&%$#"! ใช้ Brainf ** k ใน 29 ไบต์หรือน้อยกว่าโดยไม่ใช้อักขระ ',' ฉันมีรหัสที่ใช้งานได้: ++++++++++[>++++++>+++++++++<<-]>-->.<[>-.<-] อย่างไรก็ตามการวนซ้ำของฉันยาวเกินไปส่ง 16 ไบต์เกินขีด จำกัด มีวิธีที่มีประสิทธิภาพมากกว่าในการตั้งค่าเซลล์ที่สองและสามเป็น 58 และ 90 เพื่อให้ฉันสามารถรันลูปที่สองของฉันได้หรือไม่? หรือมีวิธีที่ดีกว่าในการทำทั้งหมดนี้ด้วยกันที่ฉันไม่ได้เห็น?

2
โปรแกรมย่อย Brainf *** ที่มีเอาท์พุตเฉพาะ
คุณควรเขียนโปรแกรม brainfuck (BF) ยาว 100 ไบต์ ตัวละครตัวหนึ่งจะถูกลบออกจากมันในทุกวิถีทางที่เป็นไปได้โปรแกรม 100 ใหม่ (ยาว 99- ไบต์) เช่นสำหรับโปรแกรม++.>.5 โปรแกรมย่อยมี+.>., +.>., ++>., และ++..++.> คะแนนของคุณจะเป็นจำนวนผลลัพธ์ที่ไม่ซ้ำใครที่โปรแกรม 100 รายการสร้างขึ้น คะแนนที่สูงขึ้นจะดีกว่า รายละเอียด โปรแกรมของคุณจะถูกยกเลิกหลังจากแสดงอักขระตัวแรก โปรแกรมและโปรแกรมที่ไม่ถูกต้องหรือไม่ได้สร้างผลลัพธ์ที่ว่างเปล่าจะไม่ถูกนับรวมกับคะแนน เซลล์ BF เป็นตัวห่อ 8 บิต (255 + 1 = 0, 0-1 = 255) โปรแกรมของคุณไม่มีการป้อนข้อมูล ถ้าคุณใช้ในรหัสที่มันตั้งเป็นเซลล์ปัจจุบัน,0 ไม่มีเซลล์ทางด้านซ้ายของตำแหน่งเริ่มต้น เช่น<.ไม่ถูกต้อง แต่เป็นที่ถูกต้องเป็นการดำเนินการที่ถูกยกเลิก.< .เทปไม่มีขอบเขตในทิศทางอื่น โปรแกรมที่มีวงเล็บไม่สมดุล ( [และ]) ไม่ถูกต้อง โปรแกรมดั้งเดิมของคุณสามารถสั้นกว่า 100 ไบต์ได้อย่างง่ายดายเพราะมันขยายได้ถึง …

28
bfcat - เข้ารหัสไฟล์เป็นโปรแกรม *** brainf
ท้าทาย เขียนโปรแกรมหรือฟังก์ชั่นที่ให้สตริงส่งคืนโปรแกรม Brainfuck ที่ถูกต้องซึ่งเมื่อรวบรวมและดำเนินการเป็น Brainfuck ส่งคืนสตริงนั้น สมมติว่าอินพุตทั้งหมดถูกเข้ารหัสเป็น ASCII สมมติว่าโปรแกรมเอาท์พุท BF จะดำเนินการในสภาพแวดล้อมด้วยเทปที่ไม่มีที่สิ้นสุด สมมติว่าตัวชี้เริ่มต้นที่เซลล์ 0 โดยที่ทุกเซลล์เริ่มต้นเป็นค่าศูนย์ ตัวอย่างแต่ละตัวอย่างด้านล่างแสดงถึงเอาต์พุตที่ถูกต้องที่เป็นไปได้สำหรับอินพุตที่กำหนด โดยเฉพาะอย่างยิ่งตัวอย่างรวมถึงการขึ้นบรรทัดใหม่และช่องว่างเพื่อช่วยให้มนุษย์สามารถอ่านได้ โซลูชั่นมีอิสระที่จะฟอร์แมตโค้ด BF เอาท์พุทในทางใดทางหนึ่ง เทปไม่มีที่สิ้นสุดเป็นทวีคูณ เซลล์ทั้งหมดที่ล่ามแปลเป็นเซลล์ขนาด 8 บิต ล้นและอันเดอร์โฟลว์ล้อมรอบในเรื่องที่คาดเดาได้และมีสติ ตัวอย่าง สตริงช่องว่าง เมื่อรับอินพุตโปรแกรม / ฟังก์ชันของคุณอาจกลับมา: +++++ +++++ +++++ +++++ +++++ +++++ ++ . เครื่องหมายอัศเจรีย์ เมื่อรับอินพุต!โปรแกรม / ฟังก์ชันของคุณอาจกลับมา: +++++ +++++ +++++ +++++ +++++ +++++ +++ . ตัวอักษรสองตัว …

9
เขียนนักแปล brainfuck
ในการเขียนโปรแกรมหรือภาษาสคริปต์xใด ๆให้เขียนโปรแกรมที่ใช้แหล่งข้อมูล brainfuck ที่ถูกต้องจาก stdin และเอาต์พุตไปยัง stdout ซอร์สโค้ดของโปรแกรมที่เขียนด้วยภาษาxซึ่งจะให้ผลลัพธ์เหมือนกับโปรแกรม brainfuck ที่แน่นอน โปรแกรมของคุณต้องทำงานกับโปรแกรม brainfuck ที่ถูกต้องรวมถึงไฟล์เปล่า คะแนนของคุณจะเท่ากับจำนวนไบต์ของซอร์สโค้ดของคุณบวกกับจำนวนไบต์ของเอาต์พุตของคุณตามอินพุตต่อไปนี้: +++++ [-] +++++ +++++ [ > +++++ ++ > ++ +++ ++++ + > +++ <<< - ] > ++ . H > + . e ++ +++ ++. l . l +++ . o > …

4
แปลง Fractran เป็น Brainfuck
พื้นหลัง Fractranเป็นภาษาโปรแกรมภาษาทัวริงที่สมบูรณ์แบบที่คิดค้นโดย John Conway โปรแกรม Fractran ประกอบด้วยรายการเศษส่วนที่เรียงลำดับแล้ว โปรแกรมเริ่มต้นด้วยการใช้จำนวนเต็มเดียวเป็นอินพุต การวนซ้ำแต่ละครั้งของโปรแกรมจะค้นหารายการสำหรับเศษส่วนแรกเช่นการคูณจำนวนด้วยเศษส่วนนั้นจะสร้างจำนวนเต็มอีก จากนั้นจะทำซ้ำกระบวนการนี้ด้วยหมายเลขใหม่เริ่มต้นที่จุดเริ่มต้นของรายการ เมื่อไม่มีเศษส่วนในรายการที่สามารถคูณด้วยตัวเลขโปรแกรมจะหยุดและให้หมายเลขเป็นเอาท์พุท เหตุผลที่ Fractran นั้นเป็นทัวริงสมบูรณ์เพราะมันจำลองเครื่องลงทะเบียน การแยกตัวประกอบเฉพาะของจำนวนเก็บเนื้อหาของรีจิสเตอร์ในขณะที่การหารและการคูณเป็นวิธีการบวกและลบจากรีจิสเตอร์แบบมีเงื่อนไข ฉันขอแนะนำให้อ่านบทความ Wikipedia (เชื่อมโยงกับด้านบน) ความท้าทาย งานของคุณคือการเขียนโปรแกรมที่สั้นที่สุดที่สามารถใช้โปรแกรม Fractran ที่ถูกต้องจาก STDIN เป็นเพียงอินพุตและสร้างโปรแกรม BF ที่ถูกต้องไปยัง STDOUT ที่จำลองโปรแกรม Fractran มีสองวิธีที่คุณสามารถจำลองโปรแกรม Fractran กับ BF หมายเหตุ: คำตอบของคุณไม่ใช่โปรแกรม BF คำตอบของคุณคือรหัสที่สร้างโปรแกรม BF จากโปรแกรม Fractran ใด ๆ เป้าหมายคือการรับโปรแกรม BF ให้เทียบเท่ากับโปรแกรม Fractran (ในทางเทคนิคคุณสามารถแข่งขันใน BF ได้ แต่มันคงยาก) …

1
การเขียนโปรแกรมในสองมิติเวลา
มันเป็นอุบัติเหตุที่ตลกที่โลกนี้มีเพียงมิติเดียว แต่มันไม่จำเป็นต้องเป็นแบบนั้น เป็นเรื่องง่ายที่จะจินตนาการถึงโลกที่มีเวลา 2 มิติหรือมากกว่านั้นและในโลกเหล่านั้นคุณสามารถสร้างคอมพิวเตอร์และใช้งานซอฟต์แวร์กับพวกมันได้เช่นเดียวกับในโลกนี้ ระบบ นี่คือระบบสำหรับการรันโปรแกรม Brainf * ck ในสองมิติของเวลา: มิติเวลาสองค่าคือ x และ y โปรแกรม Brainf * ck แต่ละรายการประกอบด้วย x half-program และ ay half-program เช่นโปรแกรมอาจเป็นได้ x: +>+ y: [-] สองโปรแกรมครึ่งแต่ละโปรแกรมมีตัวชี้โปรแกรมของตัวเอง แต่พวกเขาแชร์ตัวชี้เทปเดี่ยว (นั่นคือพวกเขาทั้งคู่ทำงานในเซลล์เดียวกันของเทป) เวลาเป็น 2 มิติดังนั้นจึงประกอบด้วยตารางช่วงเวลา: เมื่อเลื่อนไปตามมิติ x โปรแกรมครึ่ง x จะดำเนินการในขั้นตอนเดียว เมื่อเลื่อนไปตามมิติ y โปรแกรมครึ่ง y จะดำเนินการในขั้นตอนเดียว ดังนั้นสำหรับตัวอย่างเช่นสมมติว่าเทปเริ่มออกเป็น[0] 0 0( []หมายถึงตัวชี้เทป) …

13
ดัชนีการเปลี่ยนแปลงของผกผัน
บทนำ พีชคณิตเรียงลำดับของรายการที่มีองค์ประกอบnสามารถกำหนดหมายเลขได้ตั้งแต่ 0 ถึงn ! - 1. ตัวอย่างเช่น 3! = 6 พีชคณิต(1,2,3)จะ(1,2,3), (1,3,2), (2,1,3), (2,3,1), ,(3,1,2)(3,2,1) เมื่อการเรียงสับเปลี่ยนถูกนำไปใช้กับรายการองค์ประกอบของมันจะเรียงลำดับตามลำดับเดียวกับตัวเลขในการเรียงลำดับ ยกตัวอย่างเช่นการใช้การเปลี่ยนลําดับ(2,3,1)การอัตราผลตอบแทนl = (a,b,c)(l[2],l[3],l[1]) = (b,c,a) อินเวอร์สของการเปลี่ยนแปลงนั้นหมายถึงการเรียงสับเปลี่ยนที่ย้อนกลับการดำเนินการนี้คือการใช้การเปลี่ยนแปลงและจากนั้นอินเวอร์สของมัน (หรือกลับกัน) ไม่ได้ปรับเปลี่ยนอาร์เรย์ ยกตัวอย่างเช่นค่าผกผันของการ(2,3,1)เป็น(3,1,2)ตั้งแต่การใช้ที่อัตราผลตอบแทน(b,c,a)(a,b,c) นอกจากนี้การเปลี่ยนแปลงผกผันของนำไปใช้กับการเปลี่ยนแปลงของตัวเองผลตอบแทนถัวเฉลี่ยเลข 1 ... n ยกตัวอย่างเช่นการใช้(3,1,2)เพื่อให้อัตราผลตอบแทน(2,3,1)(1,2,3) ตอนนี้เรากำหนดฟังก์ชั่นrevind ( x ) เป็นดัชนีของการเปลี่ยนแปลงผกผันของการเปลี่ยนแปลงที่มีดัชนีx (นี่คือA056019หากคุณสนใจ) เนื่องจากการเรียงสับเปลี่ยนกับดัชนีฉันเพียงแก้ไขรายการสุดท้ายkของรายการiff 0 ≤ i < k !,เราสามารถเพิ่มองค์ประกอบจำนวนใด ๆ ไปยังจุดเริ่มต้นของรายการโดยไม่มีผลต่อrevind ( i ) ดังนั้นความยาวของรายการจึงไม่มีผลต่อผลลัพธ์ …
17 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 

3
ค้นหารูปแบบในเงื่อนไข
ในความท้าทายนี้งานของคุณคือการหาวัสดุพิมพ์ที่มีโครงสร้างที่กำหนด อินพุต ข้อมูลของคุณจะเป็นสองสายที่เป็นตัวเลขไม่ว่างเปล่าเป็นรูปแบบ pและข้อความ tแนวคิดก็คืออักขระแต่ละตัวจะpแทนซับสตริงที่ไม่ว่างเปล่าที่ต่อเนื่องกันtซึ่งเกิดขึ้นถัดจากกันและกันและpแสดงถึงการต่อกันของมัน อักขระที่เหมือนกันสอดคล้องกับสตริงย่อยที่เหมือนกัน ตัวอย่างเช่นรูปแบบaaหมายถึงสแควร์ที่ไม่ว่างเปล่า (สตริงที่ได้จากการต่อสตริงที่สั้นกว่าเข้ากับตัวเอง) ดังนั้นรูปแบบaaสามารถจับคู่สตริงย่อยbyebyeได้ด้วยการaจับคู่แต่ละbyeครั้ง เอาท์พุต หากข้อความที่tมีสตริงย่อยที่pการแข่งขันแล้วส่งออกของคุณจะเป็นสตริงย่อยที่มีทวิภาคแทรกระหว่างสตริงที่ตรงกับตัวละคร: pตัวอย่างเช่นถ้าเรามีt = byebyenowและp = aaก็bye:byeเป็นผลลัพธ์ที่ยอมรับได้ อาจมีหลายตัวเลือกสำหรับสตริงย่อยที่ตรงกัน แต่คุณจะส่งออกหนึ่งในพวกเขาเท่านั้น ถ้าtไม่ได้มี substring :(จับคู่ของคุณออกจะเป็นหน้าเศร้า กฎและคำชี้แจง ตัวละครที่แตกต่างกันpสามารถสอดคล้องกับสตริงเหมือนกันเพื่อให้สามารถจับคู่สตริงp = aba AAAโปรดทราบว่าตัวละครจะต้องสอดคล้องกับสตริงที่ไม่ว่างเปล่า; โดยเฉพาะอย่างยิ่งถ้าpมีความยาวมากกว่าการส่งออกจะต้องมีt:( คุณสามารถเขียนโปรแกรมหรือฟังก์ชั่นเต็มรูปแบบและคุณยังสามารถเปลี่ยนลำดับของอินพุตทั้งสองได้ จำนวนไบต์ต่ำสุดที่ชนะและไม่อนุญาตช่องโหว่มาตรฐาน กรณีทดสอบ pattern text -> outputได้รับในรูปแบบ โปรดทราบว่าอาจมีเอาต์พุตอื่นที่ยอมรับได้ a Not -> N aa Not -> :( abcd Not -> :( aaa rerere -> …
17 code-golf  string  code-golf  ascii-art  geometry  code-golf  ascii-art  code-golf  sequence  stack  code-challenge  number  sequence  answer-chaining  code-golf  code-challenge  math  combinatorics  binary-matrix  code-golf  number  code-golf  cryptography  bitwise  code-golf  sudoku  code-golf  brainfuck  metagolf  code-golf  probability-theory  number-theory  primes  fewest-operations  factoring  golf-cpu  code-golf  restricted-source  code-golf  graphical-output  sequence  binary  code-golf  tips  c#  code-golf  geometry  code-golf  graphical-output  fractal  code-golf  number  sequence  code-golf  number  array-manipulation  popularity-contest  game  board-game  code-golf  puzzle-solver  grid  code-golf  ascii-art  geometry  grid  tiling  code-golf  ascii-art  whitespace  balanced-string  code-golf  card-games  king-of-the-hill  javascript  code-golf  whitespace  balanced-string  code-golf  code-golf  math  abstract-algebra  code-golf  java  code-golf  interpreter  stack  code-golf  base-conversion  code-golf  tips  code-golf  ascii-art  geometry  brainfuck  metagolf  code-challenge  math  quine  code-generation  code-golf  number  kolmogorov-complexity  arithmetic  expression-building  code-golf  string  code-golf  quine  popularity-contest  code-golf  base-conversion  code-challenge  image-processing  code-golf  conversion  coding-theory 

19
ตรวจสอบโปรแกรม Brainfuck
อีกปัญหาหนึ่งในการแยกวิเคราะห์ Brainfuck แต่คราวนี้ ... ต่างออกไป คุณกำลังทำงานใน Infinite Monkeys Incorporated ซึ่งเป็น บริษัท ที่ทำโปรแกรม Brainfuck เพื่อแก้ปัญหาที่น่าสนใจต่าง ๆ (โดยไม่เกิดอุบัติเหตุไม่น้อยเลยที่ บริษัท ทำโปรแกรมแบบสุ่ม) อย่างไรก็ตามดูเหมือนว่าเครื่องทัวริงที่รวดเร็วของคุณที่ใช้งาน Brainfuck เท่านั้นที่มีปัญหาเล็ก ๆ และมีราคาแพงที่มีข้อผิดพลาดทางไวยากรณ์ - สร้างหนึ่งและคอมพิวเตอร์จะระเบิด มันอาจเป็นข้อบกพร่องในการออกแบบ แต่ไม่มีใครใส่ใจที่จะหาว่าทำไมมันถึงเกิดขึ้น เนื่องจากเครื่องทัวริง (โดยเฉพาะอย่างยิ่งเครื่องเร็ว) มีราคาแพง (หลังจากทั้งหมดเครื่องเหล่านี้มี RAM แบบอินฟินิตี้ซึ่งมีค่าใช้จ่าย) มันจะดีกว่าเพื่อให้แน่ใจว่าโปรแกรมจะไม่มีข้อผิดพลาดทางไวยากรณ์ใด ๆ บริษัท ของคุณกำลังเรียกใช้รหัสจำนวนมากดังนั้นการตรวจสอบด้วยตนเองจะไม่ทำงาน เขียนโปรแกรมที่อ่านรหัส STDIN สำหรับ Brainfuck และออกด้วยสถานะการออกที่ตั้งค่าเป็นสิ่งอื่นที่ไม่ใช่ 0 (ข้อผิดพลาด) หากโปรแกรมมีข้อผิดพลาดทางไวยากรณ์ (ตัวอย่างเช่น]เป็นข้อผิดพลาดทางไวยากรณ์เนื่องจากไม่มีการจับคู่[) ออกโดยตั้งค่าสถานะการออกเป็น 0 หากโปรแกรมนั้นสมบูรณ์ []ตรวจสอบให้แน่ใจว่าโปรแกรมที่คุณสังเกตเห็นความผิดพลาดได้อย่างถูกต้องที่เกี่ยวข้องกับ …

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