คำถามติดแท็ก code-golf

Code-golf เป็นการแข่งขันเพื่อแก้ไขปัญหาเฉพาะในส่วนที่น้อยที่สุดของซอร์สโค้ด

30
เครื่องคิดเลขที่เพิ่มค่าถ่าน
งาน สร้างเครื่องคิดเลขที่ใช้สตริงจากไฟล์ stdin หรืออะไรก็ตามและเพิ่มค่าทั้งหมดของตัวอักษร ตัวอย่าง Input Hello World! Output 1085 กฎระเบียบ เครื่องคิดเลขต้องยอมรับการเข้ารหัส ASCII เพียงอย่างเดียว รหัสที่สั้นที่สุดชนะ หมายเหตุ เกี่ยวกับความคิดเห็นของ m.buettner ฉันต้องพูดว่าฉันไม่ได้คิดถึงส่วนของมัลติไบต์ ดังนั้นฉันจึงทิ้งมันไว้เป็นสิ่งโบนัสเช่นกัน เครื่องคิดเลขควรทำงานตามที่เขียนไว้ดังนั้นไม่จำเป็นต้องแก้ไขก่อนที่จะรวบรวมหรือตีความ โบนัส ขอบคุณSyntheticaนี่คือโบนัสอีกหนึ่งอย่าง โปรแกรมที่มีเอาต์พุตต่ำสุดเมื่อคุณใช้รหัสในขณะที่อินพุทชนะจะได้รับดาว ฉันไม่ต้องการแก้ไขโดยสมบูรณ์ หากคุณเขียนเพิ่มเติมเพื่อส่งออกค่า (ขวา) ใน UTF-8 คุณจะได้ดาว รหัสที่ทำงานได้เร็วที่สุดบนแล็ปท็อปของฉัน (Lenovo Yoga 13 Intel Core i5 3317U 1.7Ghz, 8GB RAM, 128GB SSD, Intel HD 4000, Windows 8) ได้รับดาว รหัสเว็บจะทำงานครั้งแรกภายใต้ …
18 code-golf 

30
ส่งคืนหมายเลขเวอร์ชันที่พลิกกลับ
เมื่อตัวเลขปรากฏบนเครื่องคิดเลขเป็นไปได้ที่จะพิจารณาการเปลี่ยนรูปของตัวเลขนั้น ๆ ตัวอย่างเช่นบนจอแสดงผลเจ็ดส่วน 2 จะแสดงดังนี้: และเมื่อพลิกในแนวนอนดูเหมือนว่า: ดังนั้นภาพสะท้อนในกระจกของ 2 คือ 5 ภารกิจในการท้าทายนี้คือการใช้ตัวเลขหนึ่งหลักและส่งกลับตัวเลขที่เป็นภาพสะท้อน (ถ้าเป็นไปได้) หากภาพสะท้อนของกระจกนั้นไม่เหมือนตัวเลขให้ส่งคืนตัวเลขที่หมุนไป 180 องศา (ถ้าเป็นไปได้) หากไม่ใช่กรณีเหล่านี้ให้ส่งคืน -1 นี่คือรายการอินพุตและเอาต์พุตแบบเต็มรูปแบบที่โปรแกรมของคุณต้องการจัดการ: Input Output 0 0 1 -1 2 5 3 -1 4 -1 5 2 6 9 7 -1 8 8 9 6 ในฐานะที่เป็นความท้าทายรหัส - กอล์ฟรหัสที่สั้นที่สุดชนะ!
18 code-golf  number 

12
ฉันรู้จักคุณ แต่คุณไม่รู้จักฉัน
คุณได้รับมอบหมายให้เขียนโปรแกรมสองโปรแกรม โปรแกรมต้องพิมพ์อะไรในปัจจัยการผลิตทั้งหมดยกเว้นเมื่อโปรแกรมBคือการป้อนข้อมูลในกรณีที่มันควรพิมพ์ โปรแกรมBต้องพิมพ์บนอินพุตทั้งหมดยกเว้นเมื่อโปรแกรมAเป็นอินพุตซึ่งในกรณีนี้ไม่ควรพิมพ์อะไรเลย11 เกณฑ์การให้คะแนน: +1 สำหรับแต่ละตัวละครจากทั้งสองโปรแกรม คะแนนต่ำสุดชนะ
18 code-golf  quine 

8
ประหยัดเงินด้วยการปัดเศษราคา
ในแคนาดาเงินจะไม่หมุนเวียนอีกต่อไป การจ่ายเงินสดจะถูกปัดเศษเป็น 5 เซนต์ที่ใกล้ที่สุด เงินสามารถบันทึกได้โดยแยกการซื้อ ตัวอย่างเช่นรายการ $ 1.02 สองรายการมีค่าใช้จ่าย $ 2.04 ซึ่งมีมูลค่าสูงถึง $ 2.05 แต่เมื่อซื้อสินค้าในการซื้อแยกต่างหากแต่ละราคาจะอยู่ที่ $ 1.00 รวมเป็น $ 2.00 อย่างไรก็ตามเมื่อซื้อสองรายการในราคา $ 1.03 ต่อชิ้นจะเป็นการดีกว่าที่จะซื้อในการซื้อครั้งเดียว อีกวิธีหนึ่งในการประหยัดเงินคือการใช้บัตรเครดิตเมื่อการปัดเศษไม่เอื้ออำนวยเนื่องจากการชำระเงินเครดิตจะไม่ถูกปัดเศษ หากเราต้องการสองรายการ $ 1.04 ราคารวมจะปัดขึ้นเป็น $ 2.10 ไม่ว่าเราจะแยกการซื้ออย่างไร ดังนั้นเราควรชำระเงินสำหรับรายการเหล่านี้ด้วยบัตรเครดิต เขียนฟังก์ชั่นหรือโปรแกรมที่ยอมรับรายการราคาเป็นจำนวนเต็มในเซนต์และส่งออกราคารวมต่ำสุดที่เป็นไปได้ (ในเซ็นต์) สำหรับรายการเหล่านั้นซึ่งสามารถทำได้ผ่านลำดับของการซื้อไม่ว่าจะเป็นเงินสดหรือเครดิต รหัสที่สั้นที่สุดชนะ กรณีทดสอบ [] : 0 [48] : 48 [92, 20] : 110 [47, 56, …
18 code-golf  number 

25
ใช้ประโยชน์สตริง
กำหนดสตริงให้ใช้ประโยชน์ โดยมูลค่าผมหมายถึงการเปลี่ยนแปลงconTeNT-lENgth Content-Lengthในตัวอย่างฉันแสดงสตริงที่มี 2 คำด้วย-เป็นขอบเขตคำ อย่างไรก็ตามฉันคาดว่าคุณจะเขียนโค้ดสำหรับสตริงที่มีจำนวนคำใด ๆ ที่คั่นด้วยอักขระตัวเดียวเป็นขอบเขต ขอบเขตนี้อาจเปลี่ยนแปลงไปตามสายอักขระ เงื่อนไข ใช้regular expressionsเป็นที่ไม่ได้รับอนุญาต อาจมีจำนวนคำใด ๆ ในประโยค (สตริง) แต่ละคำจะประกอบด้วยEnglishตัวอักษร[a-zA-Z]ของกรณีใด ๆ คำที่แตกต่างในประโยคจะถูกคั่นด้วยอักขระเดียว ตัวนี้จะเพียงเป็นหนึ่งในใด ๆ-, ., <space-character>, /, ,& #คุณสามารถสรุปได้อย่างปลอดภัยว่าประโยคนั้นจะไม่มีตัวละครอื่นยกเว้นตัวที่กล่าวถึง ขอบเขตของคำควรได้รับการเก็บรักษาไว้ในผลลัพธ์ รหัสที่สั้นที่สุดชนะ ตัวอย่างเช่นโปรแกรมของคุณควรเอาท์พุทสำหรับBegin/With.Type&ContentBeGin/wITH.tyPE&conTeNt Some test cases: "aGeNT ACcEpT/LEngTh-tYPe USeR raNgE.TyPe" "type&AgeNt/CC/COnteNt lEnGth#acCePT/AgeNt.RAnGe-Cc/contEnt/cODe" "cc/rEspoNCe.lEngtH#tYpE-witH&UsEr/bEgIN&uSer.AGEnT&begIn/aCCEPt/Cc" "lENgTH#USeR.tYpE/BeGiN&LENGth tYpe/ACCEpt#rANge/codE&AnD-ACCepT/ConTenT" "contENT/ACcEpT" "BeGin/wITH.tyPE&conTeNt" "Code.cc#User.lenGTh-USer-AND&tyPE TypE&leNgtH.tYPe usER.UseR&with" "RaNgE&COnTeNT WITh CoNTENT-TypE tyPe" …
18 code-golf  string 

10
ข้อ จำกัด ที่โง่และทะเลทราย
ดังนั้นคุณกำลังนั่งอยู่ที่โต๊ะทำงานของคุณเล่นกอล์ฟเพื่อคำนวณตัวเลข 20 ตัวแรกของไพและตามมาด้วยเจ้านายของคุณแล้วโยนแอปเปิ้ล IIe ของคุณออกไปนอกหน้าต่าง ตอนนี้คุณกำลังทำงานในโครงการใหม่และคอมพิวเตอร์เครื่องนี้ยังไม่มีความสามารถด้านข้อความใด ๆ ไม่มี. ไม่มีแบบอักษร ไม่มีอะไร ตอนนี้ขอจบโปรแกรมนั่น คำนวณและแสดง 20 ตัวอักษรแรกของ pi โดยไม่ใช้แบบอักษรใด ๆ ที่ไม่ได้เป็นส่วนหนึ่งของโปรแกรมของคุณ เอาต์พุตของคุณสามารถแสดงหรือเขียนลงในไฟล์สแตนดาร์ดเป็นไฟล์รูปภาพ (jpeg, png, gif, svg (ตราบใดที่คุณไม่ได้ใช้อักขระใด ๆ ), bmp, xpm) คุณสามารถใช้ภาษาใดก็ได้ แต่คุณไม่สามารถใช้ฟังก์ชั่นแบบอักษรของภาษาการแสดงข้อความหรือสิ่งที่คล้ายกันได้ โบนัสขนาดเล็ก (10 ตัวอักษร) ถ้ามันจะใช้ได้กับ Lisa แก้ไข: สำหรับผู้ที่ไม่ได้คิดว่าแรงบันดาลใจของฉันคือแม็คแรกและชื่อเป็นปุน ความรุ่งโรจน์ที่ยิ่งใหญ่ของ @Sukminder ซึ่งเป็น gif ที่เคลื่อนไหวได้ยอดเยี่ยมมาก การประกวดยังไม่จบหากมีคำตอบที่ดีกว่า

4
ติดตั้งโปรแกรมดาว!
ความท้าทาย เขียนโปรแกรมหรือฟังก์ชั่นที่พิมพ์ดาว! โปรแกรมจะรับพารามิเตอร์สองตัวโดยอินพุตมาตรฐาน: ขนาดของดาวและจำนวนจุดของดาว ดาวสามารถมีขนาดใดก็ได้ระหว่าง 0 ถึง 10 และมี 3, 4 หรือ 5 คะแนน พารามิเตอร์อินพุตถูกคั่นด้วยเครื่องหมายจุลภาคตัวอย่างเช่น: 5,3หมายถึงขนาด 5 ดาวที่มี 3 คะแนน ดาวเหล่านี้ประกอบด้วยเครื่องหมายดอกจัน* พิจารณาว่าโปรแกรมจะได้รับอินพุตที่ถูกต้องเท่านั้น การพิมพ์จะต้องเว้นระยะห่างอย่างถูกต้องเพื่อให้เราสามารถมองเห็นดาวสวยในผลลัพธ์! คำอธิบายพารามิเตอร์ จุด คือจำนวนแขนที่นับจากเครื่องหมายดอกจันส่วนกลาง 3 คะแนนดาว : * * * * * * * พวกมันประกอบไปด้วยแขนแนวตั้งและแขนสองเส้นทแยงมุม ระยะห่างระหว่างแขนในแนวทแยงคือ2*size-1 4 คะแนนดาว * * * * * * * * * พวกเขามีรูปแบบของ …

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

30
เครื่องสร้างรหัสตั๋วสุ่ม
บริษัท ลอตเตอรีต้องการสร้างหมายเลขตั๋วลอตเตอรี่แบบสุ่มที่มีความยาว 10 อักขระ เขียนรหัสในภาษาใด ๆ เพื่อสร้างตัวเลขที่ทุกหลักมาเพียงครั้งเดียวเช่น9354716208ในจำนวนนี้จำนวนเต็มทั้งหมดจาก 0 ถึง 9 มาเพียงครั้งเดียว หมายเลขนี้ควรเป็นตัวเลขสุ่ม หมายเลขที่สร้างควรแสดงบนหน้าจอ จะต้องสามารถสร้างการเรียงสับเปลี่ยนทั้งหมดของอักขระที่อนุญาตทั้งหมด รหัสจำเป็นต้องมีขนาดเล็กที่สุดเท่าที่จะเป็นไปได้ (เป็นไบต์)
18 code-golf 

1
แพ้นิ้วเท้า
เขียนโปรแกรมที่ a จะเล่นเกมของMisère tic-tac-toe นั่นคือเป้าหมายคือการบังคับให้คู่ต่อสู้ของคุณใช้สามในแถว ยอมรับอินพุตมาตรฐานทั้ง 'X' หรือ 'O' (ตัวอักษรไม่ใช่ศูนย์) เพื่อพิจารณาว่าจะให้โปรแกรมเล่นด้านใด จากนั้นเอาท์พุทตัวเลขเดียวสำหรับการเคลื่อนไหวของคุณในเทิร์นของคุณและอ่านตัวเลขหนึ่งหลักในเทิร์นของคุณจนกว่าเกมจะจบ (X ไปก่อนเสมอ) เมื่อตัดสินผู้ชนะแล้วให้ส่ง X หรือ O ให้กับผู้ชนะหรือ D เพื่อผลเสมอ ตัวอย่างเช่นถ้า O ได้รับ 3 ในแถว, X ชนะ สมมติว่าบอร์ดมีหมายเลขดังนี้: 0|1|2 ----- 3|4|5 ----- 6|7|8 ทางออกที่ดีจะดีที่สุดและไม่เคยสูญเสีย เช่นเดียวกับโอเอกซ์การเล่นที่สมบูรณ์แบบน่าจะส่งผลให้เสมอ หากปฏิบัติตามโปรโตคอลข้างต้นฉันสามารถทดสอบการส่งโดยอัตโนมัติตามกลยุทธ์ที่เป็นไปได้ต่างๆ ผู้ชนะคือรหัสที่สั้นที่สุด คะแนนโบนัสถ้ามันเลือกแบบสุ่มจากการเคลื่อนไหวที่ดีเท่า ๆ กันเพื่อให้คาดเดาได้ยากขึ้น

1
ฉันเคยแก้ปริศนากอล์ฟรหัสเช่นคุณ แต่แล้วฉันก็เอาลูกธนูที่หัวเข่า
ได้รับการตีเข่าที่มีลูกศรน่าจะเป็นอาการบาดเจ็บของทางเลือกในขณะนี้ ดังนั้นฉันขอเสนอความท้าทายกอล์ฟต่อไปนี้ คุณมีนักผจญภัยที่มีลักษณะเช่นนี้: O /|\ / | \ | | / \ / \ รับไฟล์ข้อความที่มีหนึ่งธนู (วาดเป็น}สัญลักษณ์) ชุดของกำแพง (วาดเป็น#สัญลักษณ์) และนักผจญภัยคนหนึ่งเขียนรหัสที่เล็กที่สุดที่คำนวณมุมและความเร็วเริ่มต้นที่คุณควรยิงธนูเพื่อตี เขาที่หัวเข่า สมมติว่าต่อไปนี้: อักขระแต่ละตัวในไฟล์คือ 0.5 x 0.5 เมตร ลูกศรถูกไล่ออกจากศูนย์กลาง}ของ0.25m, 0.25m แรงโน้มถ่วงคือ 10ms^-2 ลูกศรมีน้ำหนัก 0.1kg Arrow เป็นจุดเช่นการชนเกิดขึ้นเฉพาะเมื่อพิกัดของลูกศรเข้าสู่หนึ่งในบล็อก ความเร็วเริ่มต้นสูงสุดคือ 50m/s มุมอาจอยู่ระหว่าง 0 (ตรงขึ้น) และ 180 (ตรงลง) การชนส่วนใดส่วนหนึ่งของขาของนักผจญภัยนั้นถือเป็นการชนที่หัวเข่า กำแพง ( #ตัวอักษร) ใช้บล็อก 0.5 มม. 0.5 …

21
Javascript: สร้างอาร์เรย์ 10x10 จำนวน 1 วินาที
เห็นได้ชัดว่าความท้าทายนี้จะไม่สำคัญกับฟังก์ชั่นและไลบรารีแยกต่างหากดังนั้นจึงไม่ได้รับอนุญาต รหัสของคุณจะต้องเป็นไปตามข้อกำหนด ECMAscript (ข้อกำหนดเฉพาะใด ๆ ) ดังนั้นจึงไม่มีคำตอบเฉพาะสำหรับเบราว์เซอร์ อาร์เรย์ต้องสามารถเข้าถึงได้หลังจากอินสแตนซ์นั้น ฉันมีคำตอบที่ฉันจะระงับในตอนนี้ หมายเหตุ:ความท้าทายนี้มีเฉพาะกับจาวาสคริปต์เพราะไม่สะดวกที่จะสร้างอาร์เรย์หลายมิติในจาวาสคริปต์

13
ขุมทรัพย์โจรสลัด
การค้นหาขุมทรัพย์ที่ซ่อนโดยโจรสลัดนั้นง่ายมาก ทุกสิ่งที่คุณต้องการสำหรับแผนที่นี้คือ เป็นที่ทราบกันอย่างกว้างขวางว่าโจรสลัดวาดแผนที่ด้วยมือและอธิบายอัลกอริทึมเพื่อหาสถานที่ด้วยวิธีต่อไปนี้: "ยืนใกล้ต้นปาล์มโดดเดี่ยวทำ 30 ก้าวสู่ป่า 15 ก้าวสู่ทะเลสาบ ... " การเดินทางผ่านเส้นทางดังกล่าวมักจะเป็นโอกาสที่ดีที่จะได้เห็นทิวทัศน์ ... อย่างไรก็ตามในปัจจุบันไม่มีใครมีเวลา นั่นเป็นสาเหตุที่ผู้แสวงหาสมบัติขอให้คุณเขียนโปรแกรมที่จะระบุตำแหน่งที่แน่นอนของขุมทรัพย์โดยใช้แผนที่ที่กำหนด อินพุต อินพุตประกอบด้วยคำสั่งหลายคำสั่ง<Direction> <Distance>คั่นด้วยเครื่องหมายจุลภาค (ซึ่งตามด้วยหนึ่งช่องว่างแต่ละคำสั่ง) เส้นทางเป็นหนึ่งในสิ่งต่อไปนี้: N- เหนือ, S- ใต้, E- ตะวันออก, W- ตะวันตก, NE- ตะวันออกเฉียงเหนือ, NW- ตะวันตกเฉียงเหนือ, SE- ตะวันออกเฉียงใต้, SW- ตะวันตกเฉียงใต้ ระยะทางเป็นจำนวนเต็ม (1 ถึง 1,000) เอาท์พุต ผลลัพธ์คือพิกัดที่คุณสิ้นสุดหลังจากทำตามคำแนะนำด้วยทศนิยมสามตำแหน่งคั่นด้วยเครื่องหมายจุลภาคและช่องว่าง ตำแหน่งเริ่มต้นมีพิกัดเป็นศูนย์ (0, 0) พิกัดแรกคือX (ทิศตะวันออกหมายถึงพิกัดที่มีขนาดใหญ่กว่าศูนย์ส่วนตะวันตกหมายถึงน้อยกว่าศูนย์) ที่สองพิกัดY (นอร์ทหมายมากขึ้นกว่าศูนย์ภาคใต้หมายถึงน้อยกว่าศูนย์) ตัวอย่าง 1 …
18 code-golf 

5
กระโดดและวิ่ง
แมทธิวชอบไขปริศนา เมื่อใดก็ตามที่เขาจัดการเพื่อแก้ปัญหาหนึ่งเขาข้ามไปรอบ ๆ อย่างมีความสุข เมื่อเร็ว ๆ นี้เขาต้องการทำเช่นนี้เนื่องจากฝนดาวตกได้เปิดหลุมอุกกาบาตและพื้นดินซึ่งเขาไม่อยากตก คุณจะได้รับส่วนหนึ่งของภูมิประเทศที่แมทธิวต้องการข้ามหวังว่าจะได้สุขภาพที่ดีในตอนท้าย พื้นดินมีหน่วยเป็นเมตรโดยแต่ละเมตรจะเป็นพื้นดินปกติหรือเป็นหลุม เมื่อเขาวิ่งเขาจะข้ามหนึ่งเมตรต่อหนึ่งก้าว; ทางเลือกคือการกระโดดซึ่งข้ามสี่เมตรต่อขั้นตอน แมทธิวเริ่มต้นที่ด้านซ้ายสุดของมาตรกราวด์แรกและต้องการไปยังจุดสุดท้าย (แต่ไม่เกิน - ลองจินตนาการถึงหลุมที่ไม่มีที่สิ้นสุดเกินกว่ามาตรวัดสุดท้ายที่กำหนดในแนวนอน) อินพุต อินพุตถูกกำหนดเป็นบรรทัดเดียวบนอินพุตมาตรฐานสิ้นสุดโดยตัวแบ่งบรรทัด เส้นประกอบด้วยขีดกลาง ( -) หรือขีดล่าง ( _) แทนเส้นมิเตอร์หรือรูเมตรตามลำดับ ตัวอย่างอินพุตอาจเป็น: ----__--___--- ภูมิทัศน์ที่กำหนดมีอย่างน้อยหนึ่งตัวและที่ความยาวไม่เกิน 30 เมตรและเริ่มต้นด้วยพื้นดินเสมอ เอาท์พุต เอาต์พุตถูกกำหนดบนเอาต์พุตมาตรฐานและแสดงชุดของคำสั่งการเคลื่อนไหวให้กับ Matthew ทั้งrun ( R) หรือjump ( J) ตามที่ระบุไว้ข้างต้น คำสั่งเรียกใช้ทำให้แมทธิววิ่งหนึ่งเมตรในขณะที่กระโดดพาเขาไปข้างหน้าสี่เมตร สำหรับตัวอย่างที่ให้ไว้ข้างต้นการเคลื่อนไหวต่อไปนี้เป็นไปได้: RRJRJRR ซึ่งมีลักษณะโดยประมาณดังนี้: หากไม่มีเส้นทางที่ปลอดภัยผ่านภูมิทัศน์เครื่องหมายอัศเจรีย์ ( !) ควรจะพิมพ์ออกมา อินพุตตัวอย่าง -------- ----__--___--- …

5
แก้ไขฟังก์ชั่นการสุ่มที่ผิดปกติ
เพื่อนมีการ์ดเสริมในคอมพิวเตอร์ของพวกเขาซึ่งสร้างหมายเลขสุ่มอย่างสมบูรณ์แบบตั้งแต่ 1 ถึง 5 รวม โชคไม่ดีที่พวกมันหกโคล่าลงบนมันและตอนนี้มันสร้างเพียง 2 ตัวสำหรับตัวเลขทั้งหมดจาก 1 ถึง 4 โชคดีที่การสุ่มนั้นถูกเก็บรักษาไว้ แต่ 2 มีความน่าจะเป็น 80% และ 5 มีความน่าจะเป็น 20% และไม่มี 1's, 3's หรือ 4's สร้างแล้ว ใช้แหล่งที่มาแบบสุ่มนี้ (เรียกมันว่าBrokenRand()หรือสิ่งที่คล้ายกัน) เขียนตัวสร้างตัวเลขสุ่มที่ใช้งานได้ซึ่งสร้างตัวเลขตั้งแต่ 1 ถึง 5 โดยมีความน่าจะเป็น 20% เท่ากันกับการสุ่มสมบูรณ์แบบเช่นเดียวกับต้นฉบับ โปรแกรมที่สั้นที่สุดชนะ คะแนนโบนัสที่มอบให้สำหรับจำนวนการโทรขั้นต่ำBrokenRandอย่างเป็นกลางโดยการให้คำปรึกษาโดยมุ่งเน้นด้านการบริการลูกค้าที่คัดสรรโดยกลุ่มคนโดยแยกตามอายุและเพศ - เช่นฉัน

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