คำถามติดแท็ก radiation-hardening

แท็กนี้สำหรับความท้าทายที่ต้องการคำตอบที่จะยังคงทำงานเมื่อมีการแก้ไขแบบสุ่มเพื่อซอร์สโค้ด

3
ตัวกระจายรังสีเมตาดาต้า
พื้นหลัง ในเว็บไซต์นี้บางครั้งเรามีคำถามที่ต้องการให้โปรแกรม "แข็งรังสี" ซึ่งหมายความว่าโปรแกรมจะต้องสามารถอยู่รอดในการลบหนึ่งไบต์หรือมากกว่าไม่ว่าจะลบไบต์ใด เป็นเรื่องปกติสำหรับงานที่มีการตั้งค่าความท้าทายในการเขียนโปรแกรมเป็นเรื่องปกติที่จะต้องการสร้างภาษาที่ดีต่อความท้าทายเหล่านี้โดยเฉพาะ เนื่องจากวิธีธรรมชาติในการทำเช่นนี้คือการเพิ่มข้อมูลเมตาบางส่วนที่ทำให้สามารถย้อนกลับไปสู่การคอร์รัปชั่นได้จริง ๆ แล้วไม่ใช่ภาษาที่จำเป็นต้องมีการออกแบบ แนวคิดคือการแปลงอินพุตแต่ละตัวเป็นลำดับไบต์ในลักษณะที่แม้ว่าลำดับนั้นฉายรังสีเล็กน้อยก็เป็นไปได้ที่จะแยกอินพุตต้นฉบับ งาน เขียนสองโปรแกรมหรือฟังก์ชั่น E (ตัวเข้ารหัส) และ D (ตัวถอดรหัส) เช่นนั้น: E จะใช้เวลาสองขัดแย้งลำดับของ octets (ซึ่งเราจะเรียกว่า " การป้อนข้อมูล " ในข้อกำหนดนี้) และติดลบ " รังสี " และผลลำดับของ octets ที่ " เข้ารหัส "; D รับหนึ่งอาร์กิวเมนต์ลำดับของ octets (" encdng ") และเอาต์พุตลำดับของ octets " reconstruction "; หากคุณใช้ทั้ง E และ D …

2
เขียนตัวรับรังสีที่ชุบแข็งด้วยรังสี
ภารกิจคือการเขียนผู้ฉายรังสีที่ชุบแข็งด้วยรังสี ฉันหมายความว่ายังไงกันแน่? irradiator เป็นโปรแกรมที่เมื่อได้รับสตริงเป็นอินพุตจะส่งออกเวอร์ชันที่เป็นไปได้ทั้งหมดของสตริงโดยลบหนึ่งอักขระ ตัวอย่างเช่นเมื่อได้รับอินพุทHello, world!แล้วโปรแกรมควรส่งออก: ello, world! Hllo, world! Helo, world! Helo, world! Hell, world! Hello world! Hello,world! Hello, orld! Hello, wrld! Hello, wold! Hello, word! Hello, worl! Hello, world อย่างไรก็ตามเครื่องฉายรังสีจะต้องได้รับการปกป้องจากรังสีดังนั้นรังสีที่คุณเขียนจะต้องอยู่รอดเมื่อใส่เข้าไปในตัวมันเอง กล่าวคือเมื่อลบหนึ่งไบต์ของโปรแกรมของคุณโปรแกรมจะยังคงทำงานได้อย่างถูกต้อง กรณีทดสอบ abc -> bc; ac; ab foo bar -> oo bar:fo bar:fo bar:foobar:foo ar:foo br:foo ba source …

1
ตรวจสอบว่าโปรแกรมของคุณถูกเปลี่ยนแปลง
เขียนโปรแกรมที่ยกเลิกโดยไม่มีข้อผิดพลาด หากไบต์เดี่ยวใด ๆ ถูกแทนที่ด้วยไบต์อื่น ๆ โปรแกรมควรส่งออก CORRUPTED อย่าอ่านซอร์สโค้ดของคุณจากไฟล์ โปรแกรมของคุณไม่ควรสร้างผลลัพธ์อื่นใด นี่คือcode-golfดังนั้นคำตอบที่สั้นที่สุดในหน่วยไบต์ชนะ แก้ไข:ลบข้อกำหนด "NOT CORRUPTED" ออกแล้ว

5
โปรแกรมการให้คะแนนด้วยตนเอง
เรามีความท้าทายการส่งออกคะแนนของคุณเองแต่มันดูเหมือนว่าทุกคำตอบมีเพียง hardcode การส่งออกและที่น่าเบื่อ 1 ดังนั้นขอให้มีความท้าทายใหม่ ผลลัพธ์ของโปรแกรมของคุณต้องมีความยาวของตัวเองในไบต์ตามด้วยสตริง" bytes"แต่เพื่อป้องกันไม่ให้การแก้ปัญหา hardcoded ถ้าเราลดขนาดของมันโดยการลบใด ๆหนึ่งไบต์, " bytes"โปรแกรมใหม่ยังต้องส่งออกก็นับไบต์ใหม่ยังคงตามมาด้วย เอาต์พุตไม่จำเป็นต้องคำนึงถึงขนาดตัวพิมพ์ คุณอาจเลือกที่จะแสดงบรรทัดใหม่ที่ต่อท้าย คำตอบของคุณจะได้รับคะแนนเป็นไบต์ด้วยไบต์ที่น้อยลงจะดีกว่า 1: ฉันชอบคำตอบจริงๆ

13
ย้ายเฉพาะช่วงเวลาโอ้ฉัน!
ภารกิจนั้นง่าย: โปรแกรมของคุณอ่านจำนวนเต็มเป็นอินพุตและพิมพ์ว่ามันเป็นไพร์มหรือไม่ คุณสามารถพิมพ์ "ใช่ / ไม่ใช่", "จริง / เท็จ" หรืออะไรก็ได้ที่ระบุผลลัพธ์อย่างไม่น่าสงสัย ความท้าทายคือรหัสจะต้องทำงานกับการย้ายแถวและคอลัมน์ หากต้องการยกเว้นโซลูชันที่เห็นได้ชัด (สั้นที่สุด "แก้ปัญหาง่าย ๆ " ซ้ำแล้วซ้ำอีกในแนวตั้งโดยใช้ถ่านด้วยความคิดเห็น) ตัวชี้วัดนั้นแตกต่างจากรหัสปกติเล็กน้อยกอล์ฟเล็กน้อย: เนื่องจากการจัดรูปแบบมีความสำคัญอย่างยิ่งในการท้าทายนี้ขนาดของรหัสจะถูกวัดในพื้นที่สี่เหลี่ยมเล็กที่สุดที่โค้ดพอดีในคำอื่น ๆ ช่องว่างนับและเส้นควรจะเต็มความยาวเท่ากัน (คุณไม่ได้ ต้องทำจริง ๆ เมื่อคุณโพสต์โซลูชันเพื่อความเรียบง่าย) ตัวอย่างเช่น int main() { return 0; } จะมีขนาด 4 * 13 = 52, (และเห็นได้ชัดว่ามันไม่พอดีกับเกณฑ์ใดเกณฑ์หนึ่งจากสองข้อนี้: การตรวจจับเฉพาะและ transposable) ขนาดที่เล็กที่สุดชนะ คุณสามารถใช้ภาษาใดก็ได้และฟังก์ชั่นห้องสมุดใด ๆ ยกเว้นว่าจุดประสงค์เดียวของฟังก์ชั่นนั้นคือการค้นหาสร้างหรือตรวจจับเฉพาะช่วงเวลา แก้ไข: ในขณะที่ผู้ชนะอาจเป็นทางออกของ Golfscript ฉันจะให้รางวัล 50 …

1
ทำให้ Quine แข็งตัว
เมื่อคืนฉันกำลังมองหาความท้าทาย Radiation Hardened Quine แต่ฉันหามันไม่เจอ ปรากฎว่าไม่มีใครถามเลย! ดังนั้นนี่คือ: งานของคุณคือสร้าง quine ซึ่งเป็นโปรแกรมคอมพิวเตอร์ที่ไม่ว่างเปล่าซึ่งพิมพ์ต้นฉบับของตัวเองโดยไม่ต้องอ่าน นอกจากนี้หากคุณลบหนึ่งไบต์จากโปรแกรมต้นฉบับของคุณโปรแกรมใหม่ควรพิมพ์แหล่งที่มาของโปรแกรมต้นฉบับของคุณ นี่คือcode-golfดังนั้นคำตอบจะได้คะแนนเป็นไบต์ด้วยจำนวนไบต์ที่น้อยกว่าจะดีกว่า

1
ควินเปลี่ยนรูปแข็งตัว
งานของคุณคือการสร้างโปรแกรมที่พิมพ์แหล่งที่มาของมันเอง "เฮ้เรามีความท้าทายนี้อยู่แล้วและมีการเปลี่ยนแปลงมากมาย! ทำไมคุณถึงสร้างอีกครั้ง" คุณอาจถาม แต่อันนี้จะเป็นหนึ่งในคนที่ยากที่สุด (หวังว่าต่อไป) ควินของคุณจะต้อง "กลายพันธุ์แข็ง" ซึ่งหมายถึงควินแม้ว่าตัวละครตัวใดตัวหนึ่งของมันจะถูกทำซ้ำในสถานที่จะต้องส่งออกซอร์สโค้ดของโปรแกรมต้นฉบับ ตัวอย่างเช่นถ้าคุณมีควินิน (ตัวอย่างต่อไปนี้ไม่ได้เขียนในภาษาใด ๆ มันเป็นเพียงรหัสเทียม): abcd โปรแกรมเหล่านี้จะต้องส่งออกทั้งหมดabcd: aabcd abbcd abccd abcdd (ในแต่ละโปรแกรมเหล่านั้นa, b, cและdจะซ้ำกันในแต่ละสถานที่ซึ่งหมายถึงตัวละครซ้ำถูกวางโดยตรงหลังจากที่ตัวละครเดิม.) กฎ: ใช้กฎมาตรฐานควินิน อักขระหลายไบต์นับเป็นอักขระเดียวและอักขระไม่ได้ "แยก" เป็นไบต์ที่เกี่ยวข้องเมื่อทำซ้ำ นี่คือรหัส - กอล์ฟดังนั้นรหัสที่สั้นที่สุดในหน่วยไบต์ชนะ!

2
โปรแกรมตรวจซ่อมตนเองผิดพลาด
งานของคุณคือการสร้างโปรแกรมที่หากลบตัวละครตัวใดตัวหนึ่งมันจะตรวจสอบว่าตัวละครตัวไหนที่ถูกลบแล้วใส่ตัวละครที่ถูกลบอีกครั้งในไฟล์ต้นฉบับของตัวเอง ตัวอย่างเช่นหากโปรแกรมของคุณเป็นRadiationHardenedและได้รับการแก้ไขRadiaionHardenedแล้วโปรแกรมของคุณจะต้องแสดงผลว่ามีการปรับเปลี่ยนไบต์ที่ 5 (ดัชนี 0) และแหล่งที่มาของโปรแกรมจะต้องRadiationHardenedทันทีหลังจากดำเนินการ หมายเหตุและกฎ คุณอาจสมมติว่าลบหนึ่งตัวอักษรในซอร์สโค้ดก่อนการดำเนินการ พฤติกรรมสำหรับโปรแกรมที่ไม่ได้แก้ไขไม่ได้กำหนดไว้ คุณอาจสันนิษฐานว่าไบต์ที่ถูกเปลี่ยนจะถูกลบไม่ย้ายใส่หรือแทนที่ ในกรณีที่มีการทำงานของตัวละครเดียวกันหลายตัวคุณอาจรายงานดัชนีแรกหรือดัชนีสุดท้ายของการทำงาน แต่จะสอดคล้องกับที่คุณใช้ ตัวอย่างเช่นbaaadการลบเพื่อbaadสามารถรายงาน 1 หรือ 3 (ศูนย์ดัชนี) แต่จะต้องเหมือนกันตลอดทั้งโปรแกรม คุณไม่จำเป็นต้องเขียนแหล่งที่มาทั้งหมดลงในไฟล์ของตัวเอง คุณต้องใส่ไบต์ที่ถูกลบอีกครั้งเท่านั้น ซึ่งแตกต่างจากกฎทั่วไปสำหรับ quines รังสีแข็งการตรวจสอบไบต์ที่เปลี่ยนแปลงจากการอ่านซอร์สโค้ดของโปรแกรมเป็นเกมที่ยุติธรรม คุณสามารถส่งออกดัชนี byte ที่เปลี่ยนแปลงผ่านรูปแบบที่เหมาะสม สอดคล้องกันไม่ว่าจะเป็นดัชนี 0 หรือดัชนี 1 หรือสัญลักษณ์อื่น ๆ คุณยังสามารถส่งออกตัวเลขภายในสตริงแม่แบบ นี่คือรหัสกอล์ฟเพื่อให้โปรแกรมที่สั้นที่สุดชนะ โชคดี! EDIT1: เปลี่ยนความต้องการจากการเปลี่ยนเป็นการลบ EDIT2: เพิ่มกฎสำหรับการทำซ้ำ

14
โบว์ลิ่งรหัสปรับเปลี่ยนได้
ท้าทายการใช้รหัส เขียนโปรแกรมหรือฟังก์ชั่นที่สร้างเอาต์พุตเดียวกันไม่ว่าคุณจะจัดเรียงซอร์สโค้ดใหม่อย่างไร (เอาต์พุตไม่สามารถเป็นข้อผิดพลาดได้) เกณฑ์การให้คะแนนPangram คะแนนของคุณคือจำนวนอักขระที่ไม่ซ้ำกันในซอร์สโค้ดของคุณ โปรแกรมที่มีซอร์สโค้ดAJBจะมีคะแนนของ3 โปรแกรมที่มีซอร์สโค้ดAAJจะมีคะแนนของ2 โปรแกรมที่มีซอร์สโค้ด111จะมีคะแนนเป็น1 นี่คือตัวแปรรหัสโบลิ่ง โปรแกรมที่มีคะแนนสูงสุดจะเป็นผู้ชนะ! (เพื่อความสะดวกของคุณมีการสร้างเครื่องมือให้คะแนนอัตโนมัติที่นี่ ) กฏท้าทาย อินพุต โปรแกรม / ฟังก์ชั่นสามารถรับอินพุตซึ่งเป็นตัวเลือกทั้งหมด เอาท์พุทเอาท์พุท นี้สามารถเป็นอะไรก็ได้ที่คุณต้องการ แต่มันควรจะไม่ใช่ไม่มี, ไม่ใช่โมฆะ, ไม่ว่างเปล่าและไม่ผิดพลาด (ดังนั้นจะต้องมีอย่างน้อย 1 ไบต์) การจัดเรียงใหม่ ไม่ว่าจะมีการจัดเรียงซอร์สโค้ดใหม่อย่างไรเอาต์พุตควรเหมือนกัน ตัวอย่าง: โปรแกรม: ABJผลhello worldเช่นเดียวกับโปรแกรม: [ AJB, JAB, JBAฯลฯ ] นี่คือตัวแปรรหัสโบลิ่ง โปรแกรมที่มีจำนวนอักขระสูงสุดเป็นผู้ชนะ!

15
Logic Gates ด้วยตนเอง
สร้างโปรแกรมที่จำลองประตูตรรกะพื้นฐาน การป้อนข้อมูล:ทุกคำหมวกตามด้วยเลขฐานสอง 2 1 OR 1 0บาทคั่นด้วยช่องว่างเช่น ประตูOR, AND, NOR, NAND, XORและXNORมีความจำเป็น เอาท์พุท:สิ่งที่เอาท์พุทของประตูตรรกะที่ป้อนจะได้รับตัวเลขสอง: 1 หรือ 0 ตัวอย่าง: AND 1 0กลาย0 XOR 0 1เป็น1 OR 1 1กลาย1 NAND 1 1เป็นกลายเป็น0 นี่คือ codegolf ดังนั้นรหัสที่สั้นที่สุดชนะ
13 code-golf  logic-gates  hashing  code-golf  code-golf  number  array-manipulation  integer  code-golf  string  unicode  text-processing  cops-and-robbers  boggle  cops-and-robbers  boggle  code-golf  ascii-art  code-golf  word-puzzle  king-of-the-hill  python  code-golf  sequence  kolmogorov-complexity  code-golf  source-layout  code-golf  string  kolmogorov-complexity  math  number  code-golf  date  code-golf  combinatorics  recursion  game  king-of-the-hill  javascript  code-golf  array-manipulation  code-golf  radiation-hardening  self-referential  code-golf  integer  code-golf  number  code-golf  set-theory  code-golf  sequence  code-golf  string  sorting  natural-language  code-golf  decision-problem  number-theory  primes  code-golf  code-golf  ascii-art  code-challenge  array-manipulation  sorting  rubiks-cube  regular-expression  code-golf  counting  file-system  recursion  code-golf  string  kolmogorov-complexity  color  code-golf  game  code-challenge  permutations  encode  restricted-time  decode  code-golf  math  decision-problem  matrix  integer  palindrome  code-golf  matrix  statistics  king-of-the-hill  king-of-the-hill  python  card-games  code-golf  string  natural-language  code-golf  sequence  number-theory 

2
ล่ามสำหรับทฤษฎีจำนวนโมดูโล n
ประโยคของทฤษฎีจำนวน (สำหรับวัตถุประสงค์ของเรา) เป็นลำดับของสัญลักษณ์ต่อไปนี้: 0และ'(ตัวตายตัวแทน) - ตัวตายตัวแทนหมายถึง+1ดังนั้น0'''' = 0 + 1 + 1 + 1 + 1 = 4 +(เพิ่มเติม) และ*(การคูณ) = (เท่ากับ) (และ)(วงเล็บ) ตัวดำเนินการเชิงตรรกะnand( a nand bคือnot (a and b)) forall (ปริมาณสากล) v0, v1, v2ฯลฯ (ตัวแปร) นี่คือตัวอย่างของประโยค: forall v1 (forall v2 (forall v3 (not (v1*v1*v1 + v2*v2*v2 = v3*v3*v3)))) นี่not …
12 code-golf  number-theory  parsing  code-golf  kolmogorov-complexity  code-golf  code-golf  array-manipulation  matrix  code-golf  array-manipulation  code-golf  string  code-challenge  graphical-output  compression  code-golf  kolmogorov-complexity  code-golf  sequence  array-manipulation  code-golf  number  base-conversion  code-golf  string  decision-problem  code-golf  string  ascii-art  code-golf  string  random  code-challenge  brainfuck  code-generation  code-golf  code-golf  quine  code-golf  interpreter  code-golf  interpreter  code-golf  array-manipulation  sorting  code-golf  halting-problem  code-golf  javascript  code-golf  algorithm  code-golf  arithmetic  code-golf  math  counting  code-golf  math  code-golf  decision-problem  radiation-hardening  code-golf  conversion  bitwise  code-golf  number  decision-problem  code-golf  string  decision-problem  code-golf  random  game  code-golf  ascii-art  graphical-output  code-golf  decision-problem  binary-tree  tree-traversal  code-challenge  array-manipulation  code-challenge  graphical-output  path-finding  test-battery  algorithm  code-golf  integer  factorial  code-golf  binary-tree  code-golf  grid  graph-theory  code-golf  regular-expression  quine  code-golf  encoding  code-golf  king-of-the-hill  javascript 

1
การฉายรังสีทำให้เป็นวั
ท้าทาย เขียนสองโปรแกรมที่: รันในสองภาษาโปรแกรมที่แตกต่างกัน ภาษาเหล่านี้อาจไม่ใช่สองภาษา เมื่อมีการเรียกใช้โปรแกรมหนึ่งมันจะส่งออกโปรแกรมที่สองและในทางกลับกัน โปรแกรมทั้งสองจะต้องแตกต่างกัน (ไม่มีรูปหลายภาษา) นี่คือสิ่งที่จับได้ว่า: โปรแกรมจะต้องผ่านการชุบแข็งด้วยรังสี ซึ่งหมายความว่าเมื่อลบชุดอักขระnnn (กำหนดไว้ด้านล่าง) ออกจากโปรแกรมใดโปรแกรมหนึ่งจากสองโปรแกรมการทำงานของมันจะไม่ได้รับผลกระทบ nnnถูกกำหนดให้เป็นจำนวนอักขระที่อาจตัดออกจากการทำงานของโปรแกรมของคุณโดยไม่ได้รับผลกระทบ nnnต้องมีอย่างน้อย1111 กฎระเบียบ ช่องโหว่มาตรฐานไม่ได้รับอนุญาต โปรแกรมของคุณจะต้องเป็นวงจรที่เหมาะสม พวกเขาอาจไม่อ่านซอร์สโค้ดของตัวเอง การให้คะแนนจะดำเนินการดังนี้: S1+S2nS1+S2n\frac{S_1+S_2}n S1S1S_1S2S2S_2 nnn นี่คือรหัสที่ท้าทายคะแนนต่ำสุดชนะ รางวัล เนื่องจากความท้าทายนี้ยากที่จะตอบฉันจะให้รางวัลแก่คนแรกที่จะตอบ
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.