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

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

30
เอาต์พุตที่มีความยาวเท่ากับโค้ด
ในความท้าทายนี้คุณควรเขียนโปรแกรมหรือฟังก์ชั่นที่ไม่มีอินพุตและพิมพ์หรือส่งคืนสตริงที่มีจำนวนไบต์เท่ากันกับโปรแกรม มีกฎไม่กี่ข้อ: คุณสามารถส่งออกไบต์ในช่วง ASCII ที่พิมพ์ได้ (0x20 ถึง 0x7E, รวมแล้ว) หรือขึ้นบรรทัดใหม่ (0x0A หรือ 0x0D) รหัสของคุณจะต้องไม่เป็น quine ดังนั้นรหัสและผลลัพธ์จะต้องแตกต่างกันอย่างน้อยหนึ่งไบต์ รหัสของคุณจะต้องมีความยาวอย่างน้อยหนึ่งไบต์ หากเอาต์พุตของคุณมีบรรทัดใหม่ต่อท้ายจะเป็นส่วนหนึ่งของจำนวนไบต์ หากรหัสของคุณต้องการแฟล็กบรรทัดคำสั่งที่ไม่เป็นมาตรฐานให้นับตามปกติ (เช่นโดยการเพิ่มความแตกต่างในการเรียกใช้มาตรฐานของการใช้ภาษาของคุณในการนับจำนวนไบต์) และความยาวของผลลัพธ์จะต้องตรงกับคะแนนของโซลูชัน เช่นถ้าโปรแกรมของคุณเป็นabและต้องการ-nแฟล็กที่ไม่เป็นมาตรฐาน(เราจะถือว่ามันไม่สามารถใช้ร่วมกับแฟล็กมาตรฐานดังนั้นจึงเป็น 3 ไบต์) คุณควรรวมผลลัพธ์ 5 ไบต์ เอาต์พุตไม่จำเป็นต้องเหมือนกันเสมอไปตราบใดที่คุณสามารถแสดงให้เห็นว่าเอาต์พุตที่เป็นไปได้ทุก ๆ กฎควินินแบบปกติใช้ไม่ได้ คุณอาจอ่านซอร์สโค้ดหรือขนาดของมัน แต่ฉันสงสัยว่านี่จะสั้นกว่าการเข้ารหัสในภาษาส่วนใหญ่ คุณสามารถเขียนโปรแกรมหรือฟังก์ชั่นและใช้วิธีการมาตรฐานใด ๆของการให้ผลลัพธ์ โปรดทราบว่าหากคุณพิมพ์ผลลัพธ์คุณอาจเลือกที่จะพิมพ์ลงในเอาต์พุตมาตรฐานหรือสตรีมข้อผิดพลาดมาตรฐาน แต่จะนับหนึ่งในนั้นเท่านั้น คุณอาจใช้ภาษาการเขียนโปรแกรมใด ๆแต่โปรดทราบว่าช่องโหว่เหล่านี้เป็นสิ่งต้องห้ามตามค่าเริ่มต้น นี่คือรหัสกอล์ฟดังนั้นคำตอบที่สั้นที่สุดที่ถูกต้อง - วัดเป็นไบต์ - ชนะ ลีดเดอร์บอร์ด แสดงตัวอย่างโค้ด var QUESTION_ID=121056,OVERRIDE_USER=8478;function answersUrl(e){return"https://api.stackexchange.com/2.2/questions/"+QUESTION_ID+"/answers?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+ANSWER_FILTER}function commentUrl(e,s){return"https://api.stackexchange.com/2.2/answers/"+s.join(";")+"/comments?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+COMMENT_FILTER}function getAnswers(){jQuery.ajax({url:answersUrl(answer_page++),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){answers.push.apply(answers,e.items),answers_hash=[],answer_ids=[],e.items.forEach(function(e){e.comments=[];var …

30
ฉันคัดลอกรหัสผ่านของฉันไปที่คลิปบอร์ด! คุณสามารถลบมันได้หรือไม่
ต่อไปนี้ที่ดีที่สุดของ การรักษาความปลอดภัย การปฏิบัติที่ผมเก็บไฟล์ข้อความธรรมดาที่มีรหัสผ่านของฉันบนฮาร์ดไดรฟ์ของฉัน อันที่จริงฉันเพิ่งคัดลอกและวางหนึ่งในนั้นเพื่อเข้าถึงบัญชี PPCG ของฉัน ในช่วงเวลาที่ชัดเจนฉันตัดสินใจว่ารหัสผ่านไม่ควรค้างอยู่ในคลิปบอร์ดหลังจากการใช้งาน เนื่องจากสิ่งนี้เกิดขึ้นกับฉันบ่อยครั้งฉันจึงสามารถใช้โปรแกรมเพื่อลบเนื้อหาของคลิปบอร์ด ท้าทาย เขียนโปรแกรมหรือฟังก์ชั่นที่ลบหรือเขียนทับข้อความใด ๆ ที่มีอยู่ในคลิปบอร์ดโดยใช้ภาษาการเขียนโปรแกรมที่คุณเลือก รายละเอียดเพิ่มเติม: หากระบบของคุณมีหลายคลิปบอร์ดคุณสามารถเขียนโปรแกรมสำหรับหนึ่งในนั้นได้ ข้อกำหนดเพียงอย่างเดียวคือผู้ใช้ต้องสามารถคัดลอกและวางข้อความโดยใช้คลิปบอร์ดนั้นได้ หากคลิปบอร์ดของคุณเก็บประวัติของรายการที่คัดลอกล่าสุดให้ถือว่ารายการล่าสุด หากคำตอบของคุณเฉพาะกับระบบปฏิบัติการหรือคลิปบอร์ดให้ระบุคำตอบนั้นในชื่อโพสต์ของคุณพร้อมกับภาษาที่ใช้ คลิปบอร์ดรับประกันว่าจะมีข้อความเมื่อโปรแกรมของคุณทำงาน คุณสามารถลบเนื้อหาจากคลิปบอร์ดหรือเขียนทับด้วยสิ่งอื่น (ไม่จำเป็นต้องเป็นข้อความ) ข้อกำหนดเพียงอย่างเดียวคือหลังจากเรียกใช้โปรแกรมแล้วการวางจากคลิปบอร์ดจะไม่สร้างข้อความต้นฉบับ หากคุณเลือกที่จะเขียนทับด้วยข้อความคงที่หรือเลือกสุ่มคุณสามารถสันนิษฐานได้ว่าเนื้อหาคลิปบอร์ดก่อนหน้านั้นแตกต่างจากข้อความนั้นดังนั้นรหัสผ่านจะถูกลบอย่างมีประสิทธิภาพ กล่าวอีกนัยหนึ่งไม่สนใจความเป็นไปได้ที่ข้อความตัวเติมเกิดขึ้นพร้อมกับรหัสผ่าน โปรแกรมไม่ควรมีผลข้างเคียงใด ๆ เช่นการรีสตาร์ทระบบปิดโปรแกรมปิดคอมพิวเตอร์หรือแช่แข็ง หลังจากที่โปรแกรมของคุณทำงานผู้ใช้ควรจะสามารถใช้งานคอมพิวเตอร์ได้ตามปกติเฉพาะเมื่อมีการลบรหัสผ่านออกจากคลิปบอร์ด นอกจากนี้ห้ามมีช่องโหว่มาตรฐาน รหัสที่สั้นที่สุดในหน่วยไบต์ชนะ
96 code-golf 

3
วิทยาศาสตร์ Sprocket: การเคลื่อนไหวระบบขับเคลื่อนโซ่
เป้าหมายของการท้าทายนี้คือการผลิตการเคลื่อนไหวของห่วงโซ่ไดรฟ์ระบบประกอบด้วยชุดของเกียร์เฟืองเชื่อมต่อกันด้วยโซ่ ข้อกำหนดทั่วไป โปรแกรมของคุณจะได้รับรายชื่อเฟืองซึ่งระบุว่าเป็น(x, y, radius)สามเท่า ระบบห่วงโซ่ไดรฟ์ส่งผลให้ประกอบด้วยเฟืองเหล่านี้เชื่อมต่อกันด้วยโซ่ตึงปิดผ่านแต่ละของพวกเขาในการสั่งซื้อ เป้าหมายของคุณคือสร้างอนิเมชั่นวนลูปไม่ จำกัดแสดงระบบที่กำลังเคลื่อนไหว ตัวอย่างเช่นกำหนดอินพุต (0, 0, 16), (100, 0, 16), (100, 100, 12), (50, 50, 24), (0, 100, 12) ผลลัพธ์ควรมีลักษณะดังนี้ . ระบบพิกัดควรเช่นที่จุดแกน x ขวาและแกน y ชี้ขึ้น คุณอาจจะคิดว่ารัศมีมีแม้ตัวเลขที่มากกว่าหรือเท่ากับ 8 (เราจะเห็นว่าทำไมเรื่องนี้ในภายหลัง.) นอกจากนี้คุณยังอาจคิดว่ามีอย่างน้อยสองเฟืองและที่เฟืองไม่ตัดอีกคนหนึ่ง หน่วยของอินพุตไม่สำคัญเกินไป ตัวอย่างและกรณีทดสอบทั้งหมดในโพสต์นี้ใช้พิกเซลเป็นหน่วยอินพุต (ตัวอย่างเช่นรัศมีของเฟืองกลางในรูปก่อนหน้าคือ 24 พิกเซล;) พยายามอย่าเบี่ยงเบนหน่วยเหล่านี้มากเกินไป ในส่วนที่เหลือของความท้าทายปริมาณเชิงพื้นที่จะถูกเข้าใจในหน่วยเดียวกับอินพุต - ตรวจสอบให้แน่ใจว่าได้สัดส่วนที่ถูกต้อง! มิติของการส่งออกควรจะมีขนาดใหญ่กว่ากรอบของเฟืองทั้งหมดที่มีขนาดใหญ่พอเล็กน้อยเพื่อให้ระบบทั้งหมดจะมองเห็นได้ โดยเฉพาะอย่างยิ่งตำแหน่งที่แน่นอนของเฟืองไม่ควรส่งผลกระทบต่อการส่งออก; เฉพาะตำแหน่งสัมพัทธ์ของพวกเขาควร (เช่นถ้าเราเปลี่ยนเฟืองทั้งหมดในตัวอย่างข้างต้นด้วยจำนวนเดียวกันเอาท์พุทจะยังคงเหมือนเดิม) โซ่ควรสัมผัสกับเฟืองที่ผ่านไปทุกจุดติดต่อและตรงไปที่อื่น ห่วงโซ่ควรผ่านเฟืองดังกล่าวว่ากลุ่มห่วงโซ่ที่อยู่ติดกัน …

30
จัดทำโปรแกรม“ Ceeeeeeee”
เมื่อฉันเขียนโปรแกรม JavaScript ที่จะใช้เป็นตัวป้อนสตริงและตัวอักษรและจะลบตัวอักษรทั้งหมดยกเว้นตัวแรกและตัวอักษรที่ได้รับเป็นตัวป้อนข้อมูลทีละตัว ตัวอย่างเช่นการคำนวณสิ่งนี้ด้วยอินพุตcodegolf.stackexchange.comและeสำหรับอักขระที่ให้ผลลัพธ์: codegolf.stackexchange.com cdegolf.stackexchange.com cegolf.stackexchange.com ceolf.stackexchange.com celf.stackexchange.com cef.stackexchange.com ce.stackexchange.com cestackexchange.com cetackexchange.com ceackexchange.com ceckexchange.com cekexchange.com ceexchange.com ceechange.com ceehange.com ceeange.com ceenge.com ceege.com ceee.com ceeecom ceeeom ceeem ceee มันทำให้ตัวละครตัวแรกและทุกeตัว ตัวละครอื่น ๆ ทั้งหมดจะถูกลบทีละตัว งานของคุณคือการเขียนโปรแกรม (หรือฟังก์ชั่น) ที่ใช้สองอินพุตและเอาต์พุต (หรือส่งคืน) สตริงที่ทำให้เกิดผลกระทบนี้ ข้อมูลจำเพาะ คุณสามารถสันนิษฐานได้ว่าสตริงจะไม่มีการขึ้นบรรทัดใหม่ อินพุตที่สองจะเป็นอักขระหนึ่งตัวเสมอ หากคำตอบนั้นอยู่ในรูปแบบของฟังก์ชั่นคุณอาจส่งคืนอาร์เรย์ของสตริงที่มีแต่ละบรรทัดในเอาต์พุต เอาต์พุตสามารถมีการขึ้นบรรทัดใหม่ที่ต่อท้าย กรณีทดสอบ Test Cases, s: Test Cases Tst Cases Ts …
95 code-golf  string 

30
มันจะหยุดหรือไม่ (ตำรวจ)
นี่คือด้ายของตำรวจ ด้ายโจรเป็นที่นี่ ความท้าทายของคุณคือการทำให้โปรแกรมที่ทำงานตลอดไปโดยไม่ลังเล1เว้นแต่จะได้รับการป้อนข้อมูลที่เฉพาะเจาะจงหรือปัจจัยการผลิต2 ถ้ามันได้รับข้อมูลนั้นก็จะต้องยุติในจำนวน จำกัด ของเวลา3 นี่คือรหัสกอล์ฟดังนั้นคำตอบสั้น ๆ ที่โจรไม่ได้บุกเข้าไปภายในหนึ่งสัปดาห์หลังจากที่ชนะการโพสต์ หลังจากสัปดาห์ที่ผ่านมาโปรดทำเครื่องหมายคำตอบของคุณว่าปลอดภัยและแสดงการหยุดพัก (ใน> ! spoiler quote) หากโจรปล้นแคร็กของคุณโปรดทำเครื่องหมายว่าเป็นแคร็กและแสดงการหยุดพัก (ใน> ! spoiler quote) การส่งกำลังเป็นที่นิยมเป็นที่ทำงานได้และ crackable ในTIO อนุญาตให้ส่งไฟล์ที่ไม่สามารถเรียกใช้หรือถอดรหัสได้ใน TIO แต่โปรดรวมคำแนะนำในการดาวน์โหลด / เรียกใช้ กรุณาทำให้การป้อนข้อมูลของคุณกำหนดและสม่ำเสมอในการทำงานทั้งหมด ดูโพสต์เมตานี้สำหรับรายละเอียด กรุณาอย่า "ใช้ RSA" หรืออะไรก็ตามที่มีความหมายต่อโจร ใช้ภาษาและคุณสมบัติที่คลุมเครือไม่ใช่การเข้ารหัสที่น่าเบื่อและการแฮช ฉันไม่สามารถบังคับใช้กฎนี้กับ แต่คุณสามารถคาดหวัง downvotes sha(input) === "abcd1234"กระหน่ำถ้าสิ่งที่คุณทำคือ 1สมมติว่าคอมพิวเตอร์ไม่ได้ถูกปิดทำลายพังทลายลงมาจากดวงอาทิตย์ร้อนจัดในความร้อนจากเอกภพหรือทำให้ TIO หมดเวลา 60 วินาที 2โปรแกรมจะต้องหยุดอย่างน้อยหนึ่งอินพุต ตราบใดที่มันวนซ้ำไปเรื่อย ๆ ในอินพุตหนึ่งและหยุดอีกอันก็ทำงานได้ 3จะต้องเป็น …

30
ใช้อัลกอริทึมการเรียงลำดับ Thanos
อัลกอริทึมการเรียงลำดับมีลักษณะดังนี้: ในขณะที่ไม่มีการเรียงลำดับรายการให้จัดครึ่งหนึ่งของรายการทั้งหมด (นำออกจากรายการ) ทำต่อไปจนกว่าจะมีการเรียงลำดับรายการหรือมีเพียงหนึ่งรายการที่เหลืออยู่ (ซึ่งเรียงลำดับตามค่าเริ่มต้น) อัลกอริทึมการเรียงลำดับนี้อาจให้ผลลัพธ์ที่แตกต่างกันขึ้นอยู่กับการใช้งาน ขั้นตอนการลบไอเท็มนั้นขึ้นอยู่กับการนำไปใช้ในการตัดสินใจ แต่รายการนั้นควรมีความยาวครึ่งหนึ่งก่อนที่จะผ่านขั้นตอนการลบไอเท็มครั้งเดียว อัลกอริทึมของคุณอาจตัดสินใจที่จะลบครึ่งแรกหรือรายการครึ่งสุดท้ายของรายการรายการคี่ทั้งหมดแม้กระทั่งรายการทีละรายการจนกว่ารายการจะมีความยาวครึ่งหนึ่งหรือไม่ได้กล่าวถึง รายการอินพุตสามารถมีจำนวนไอเท็มตามอำเภอใจ (ภายในเหตุผลสมมติว่ามีมากถึง 1,000 ไอเท็ม) ไม่เพียง แต่รายการที่แบ่งแยกได้อย่างสมบูรณ์แบบของรายการ 2 ^ n คุณจะต้องลบรายการ (n + 1) / 2 หรือ (n-1) / 2 หากรายการนั้นเป็นเลขคี่ฮาร์ดโค้ดหรือตัดสินใจสุ่มระหว่างรันไทม์ ตัดสินใจด้วยตัวคุณเอง: ธานอสจะทำอะไรถ้าจักรวาลมีสิ่งมีชีวิตแปลก ๆ จำนวนหนึ่ง? รายการจะถูกจัดเรียงหากไม่มีรายการใดเล็กกว่ารายการก่อนหน้า รายการที่ซ้ำกันอาจเกิดขึ้นในอินพุตและอาจเกิดขึ้นในเอาต์พุต โปรแกรมของคุณควรใช้อาร์เรย์ของจำนวนเต็ม (ผ่าน stdin หรือพารามิเตอร์ทั้งรายการหรือพารามิเตอร์อาร์เรย์) และส่งกลับอาร์เรย์ที่เรียงลำดับแล้ว (หรือพิมพ์ไปยัง stdout) ตัวอย่าง: // A sorted list remains sorted [1, …

14
ฉันเป็นคนก้าวร้าวและต้องการดูถูกเจ้านายของฉันโดยที่เขาไม่รู้
มันเป็นเวลาไม่กี่เดือนที่ผ่านมาในการทำงานและฉันรู้สึกว่าฉันแค่อยากกรีดร้องให้กับเจ้านายของฉัน อย่างไรก็ตามฉันไม่ใช่คนที่เผชิญหน้ากับคนที่ฉันมีปัญหาโดยตรง ฉันยังไม่ต้องการตกงาน ดังนั้นนี่เป็นความคิด: ฉันต้องการที่จะดูถูกเขาโดยที่เขาไม่เคยรู้ และฉันก็รู้วิธีที่สมบูรณ์แบบ: ฉันต้องการซอฟต์แวร์บางอย่างที่เข้ารหัสการดูถูกภายในข้อความที่ดีอย่างสมบูรณ์ และเมื่อเห็นว่าเขารู้ว่าไม่เห็นต้นไม้เป็นป่าฉันคิดว่าฉันรู้ได้อย่างไรว่า: เขียนโปรแกรมที่ใช้ใส่สตริงที่มีความยาวไม่ทราบ แต่ไม่มีการแบ่งบรรทัด นี่จะเป็นข้อความดิบที่ฉันต้องการส่ง หากเป็นไปได้ให้ส่งคืนสตริงที่จัดรูปแบบจนข้อความ "DIE IN A GREASE FIRE" ทำขึ้นคอลัมน์ซ้ายทั้งหมด ด้วยย่อหน้าใหม่ที่ควรเว้นวรรคระหว่างคำ ตอนนี้เมื่อฉันโกรธมากก็เป็นสิ่งสำคัญเท่าเทียมกันที่ตัวอักษรทุกตัวเป็นตัวพิมพ์ใหญ่ คุณไม่สามารถแก้ไขสตริงด้วยวิธีอื่น ๆ เช่นคุณไม่สามารถเปลี่ยนสตริงทั้งหมดเป็นอักขระตัวพิมพ์ใหญ่ หากสตริงที่มีปัญหาไม่สามารถจัดรูปแบบด้วยวิธีนี้คุณจะต้องส่งคืนสตริงเดิม อ่านอินพุตจากอินพุตมาตรฐาน ใช้กฎปกติ: ไม่มีการร้องขอ HTTP ไม่มีการให้คำปรึกษาจาก Marvin จาก THGTTG ​​ฯลฯ อินพุตตัวอย่าง: เรียนบอสเป็นอย่างไรบ้าง มันมาถึงความสนใจของฉันที่ฉันได้รับความผิดทั้งหมดสำหรับอุบัติเหตุเมื่อวันศุกร์ที่ ไม่ใช่แค่ส่วนใหญ่เท่านั้น ทุกบิตสุดท้ายของมัน มันผิดหรือเปล่าที่ฉันคิดว่าส่วนที่เหลือของทีมมีส่วนรับผิดชอบอย่างน้อยที่สุด? ท้ายที่สุดพวกเราทั้งหกคนมีส่วนร่วมจากการเดินทาง ไม่ใช่ว่าฉันคิดว่าฉันควรยืนโดยไม่มีการตำหนิ ไม่ใช่เลย. ทั้งหมดที่ฉันพูดคือ: ฉันทำอย่างดีที่สุด ฉันพยายามอย่างหนัก ฉันปรับปรุงอย่างต่อเนื่อง และฉันก็รับผิดชอบตลอดเวลา โดยทั่วไปแล้วฉันก็โอเคกับความรับผิดชอบเต็มที่สำหรับการกระทำของฉัน แต่หลังจากฤดูใบไม้ผลินี้ดูเหมือนว่าฉันได้รับมากกว่าที่ฉันสมควรได้รับ จำสัญญา …
93 code-golf  string 

12
พิสูจน์ว่ามาตรฐานการเข้ารหัสลับของรัสเซียมีโครงสร้างที่มากเกินไป
เป้าหมายของความท้าทายนี้คือการหาฟังก์ชั่นสั้น ๆ ที่เป็นไปไม่ได้ในฟังก์ชันpที่คุณเลือก นี่คือรหัส C ที่ใช้มัน (ดู ลิงค์ TIO นี้ซึ่งพิมพ์เอาท์พุทด้วย) และหน้าวิกิพีเดียที่มีมัน unsigned char pi[] = { 252,238,221,17,207,110,49,22,251,196,250,218,35,197,4,77, 233,119,240,219,147,46,153,186,23,54,241,187,20,205,95,193, 249,24,101,90,226,92,239,33,129,28,60,66,139,1,142,79, 5,132,2,174,227,106,143,160,6,11,237,152,127,212,211,31, 235,52,44,81,234,200,72,171,242,42,104,162,253,58,206,204, 181,112,14,86,8,12,118,18,191,114,19,71,156,183,93,135, 21,161,150,41,16,123,154,199,243,145,120,111,157,158,178,177, 50,117,25,61,255,53,138,126,109,84,198,128,195,189,13,87, 223,245,36,169,62,168,67,201,215,121,214,246,124,34,185,3, 224,15,236,222,122,148,176,188,220,232,40,80,78,51,10,74, 167,151,96,115,30,0,98,68,26,184,56,130,100,159,38,65, 173,69,70,146,39,94,85,47,140,163,165,125,105,213,149,59, 7,88,179,64,134,172,29,247,48,55,107,228,136,217,231,137, 225,27,131,73,76,63,248,254,141,83,170,144,202,216,133,97, 32,113,103,164,45,43,9,91,203,155,37,208,190,229,108,82, 89,166,116,210,230,244,180,192,209,102,175,194,57,75,99,182, }; unsigned char p(unsigned char x) { return pi[x]; } คืออะไร p pเป็นส่วนประกอบของสองมาตรฐานการเข้ารหัสลับของรัสเซียคือฟังก์ชันแฮชStreebogและตัวเลขบล็อกKuznyechik ในบทความนี้ (และระหว่างการประชุม ISO) นักออกแบบของอัลกอริทึมเหล่านี้อ้างว่าพวกเขาสร้างอาร์เรย์piโดยเลือกวิธีเรียงสับเปลี่ยน 8 …

20
0xBEEF อยู่ที่ไหน
ความท้าทายนี้ได้รับแรงบันดาลใจจากโฆษณาของเวนดี้ในปี 1984 ภาพประกอบโดย TS Rogers งานของคุณคือการหา 0xBEEF เลขฐานสิบหกบนขนมปังไบนารี 'เนื้อวัว' ประกอบด้วยรูปแบบต่อไปนี้: 1 0 1 1 (0xB) 1 1 1 0 (0xE) 1 1 1 0 (0xE) 1 1 1 1 (0xF) และ 'bun' ประกอบด้วยเมทริกซ์ไบนารี 12x12 เช่น: 1 1 1 0 0 1 1 1 1 1 1 0 1 1 0 …

27
รหัสสิ้นสุดหรือไม่
นี่คือความท้าทายของรหัสกอล์ฟที่ฉันคิดด้วยการดัดงอทางคณิตศาสตร์ ความท้าทายคือการเขียนรหัสที่สั้นที่สุดเท่าที่จะเป็นไปได้ว่าเป็นคำถามเปิดหรือไม่ว่ารหัสนั้นจะยุติลงหรือไม่ ตัวอย่างของสิ่งที่ผมหมายถึงอาจจะเป็นชิ้นส่วนของรหัสต่อไปหลามที่ดัดแปลงมาจาก Anwser ไปนี้คำถาม stackexchange cs def is_perfect(n): return sum(i for i in range(1, n) if n % i == 0) == n n = 3 while not is_perfect(n): n = n + 2 นักคณิตศาสตร์คาดเดาว่าไม่มีตัวเลขสมบูรณ์แบบแปลก ๆ แต่มันไม่เคยได้รับการพิสูจน์แล้วดังนั้นจึงไม่มีใครรู้ว่ารหัสชิ้นนี้จะยุติลงหรือไม่ คุณสามารถใช้โค้ดอื่น ๆ (อาจขึ้นอยู่กับปัญหาแบบเปิดอื่น ๆ เช่นการคาดคะเนโคลลาตซ์หรือการคาดคะเนสองช่วง) ที่สั้นกว่า แต่ไม่ทราบว่ายุติหรือไม่? แก้ไข: บางคนได้นำมาเพิ่มเติมกฎที่ดี - การแก้ปัญหาสำหรับคำถามควรกำหนดขึ้น แม้ว่ามันจะน่าสนใจยิ่งขึ้นถ้าคุณสามารถหาวิธีแก้ปัญหาที่สั้นกว่าโดยใช้ …
92 code-golf  math 

30
สตริงนี้จะทำงานเป็นสตริงหรือไม่
/\_‾จงเขียนโปรแกรมที่ใช้สตริงบรรทัดเดียวที่คุณสามารถสันนิษฐานได้ว่าจะมีตัวอักษรที่ (นั่นคือไปข้างหน้าและข้างหลังเฉือน, ขีดเส้นใต้และoverlineคุณสามารถใช้~แทน overline ถ้าคุณต้องการเนื่องจาก overline ไม่สะดวก ASCII) ตัวอย่างหนึ่งอินพุตที่เป็นไปได้คือ: __/‾‾\/\_/‾ โปรแกรมของคุณจำเป็นต้องส่งออกค่าจริงหรือเท็จขึ้นอยู่กับว่าขอบด้านซ้ายของสตริงคือ "เชื่อมต่อ" ดังนั้นเพื่อพูดถึงขอบด้านขวาของสตริงผ่านบรรทัดของอักขระ ดังนั้นหากการปรับระยะสั้นลงเล็กน้อยจะมีเส้นสีดำทึบ (แม้ว่าจะเป็นเส้นหยัก) ตลอดทางจากขอบด้านซ้ายไปทางขวาเช่นสายอักขระหรือเส้นใหญ่ที่ไม่ขาด เอาต์พุตสำหรับตัวอย่างด้านบนจะเป็นจริงเพราะขอบเชื่อมต่อ: เพื่อให้ชัดเจนในการเชื่อมต่อ: / เชื่อมต่อที่ด้านล่างซ้ายและขวาบน \ เชื่อมต่อที่มุมบนซ้ายและขวาล่าง _ เชื่อมต่อที่ด้านล่างซ้ายและขวาล่าง ‾(หรือ~) เชื่อมต่อที่มุมบนซ้ายและขวาบน นอกจากนี้: ไม่สำคัญว่าขอบของสตริงเริ่มต้นที่ด้านบนหรือด้านล่างมันสำคัญเพียงว่ามันจะเชื่อมต่อในแนวนอนผ่านความยาวทั้งหมดของสตริง คุณสามารถสันนิษฐานได้ว่าสตริงอินพุตนั้นไม่ว่างเปล่าและแน่นอนแค่หนึ่งบรรทัด นี่คือตัวอย่างเพิ่มเติมตามด้วย 1 (ความจริง) หากพวกเขาเชื่อมต่อหรือ 0 (เท็จ) หากไม่: __/‾‾\/\_/‾ 1 _ 1 \ 1 / 1 ‾ 1 ___ 1 \/ 1 …

30
ห้าสิบ Shades of Grey
เด็กชายและเด็กหญิงตื่นเต้นที่จะได้เห็นFifty Shades of Greyบนหน้าจอสีเงินเราแค่ต้องการโค้ดโดยไม่ถูกรบกวนดังนั้นนี่คือความท้าทายในการเลือกสมองของเรา คุณต้อง: พิมพ์บนหน้าจอห้าสิบสี่เหลี่ยมที่เต็มไปด้วยแต่ละสีเทาที่แตกต่างกัน หากภาษาที่คุณเลือกไม่มีความสามารถในการประมวลผลภาพคุณสามารถส่งออกไฟล์ภาพได้ ต้องมองเห็นช่องสี่เหลี่ยมอย่างน้อย 20 x 20 พิกเซล คุณไม่สามารถใช้ตัวเลขสุ่มได้เว้นแต่คุณจะตรวจสอบให้แน่ใจว่าแต่ละเฉดสีนั้นไม่ซ้ำกัน คุณไม่สามารถเชื่อมต่อกับบริการใด ๆ ผ่านเครือข่ายใด ๆ คุณไม่สามารถอ่านไฟล์ใด ๆ ในโปรแกรมของคุณ คุณไม่สามารถใช้ไลบรารีใด ๆ จากไลบรารีมาตรฐานของภาษาที่คุณเลือก รหัสนี้เป็นรหัสกอล์ฟที่สั้นที่สุดที่จะชนะ

30
ภาพ Mandelbrot ในทุกภาษา
ฉันมักจะใช้รูปMandelbrotเป็น Hello World ในรูปแบบกราฟิกในแอปพลิเคชันกราฟิกใด ๆ ที่ฉันได้รับ ตอนนี้ก็ถึงตาคุณแล้ว ภาษาต้องมีความสามารถในการแสดงผลกราฟิกหรือแผนภูมิรูปวาด (ไม่อนุญาตให้บันทึกไฟล์) แสดงรูปภาพสี่เหลี่ยมหรือกราฟ ขนาดอย่างน้อย 128 และสูงสุด 640 ทั่วทุกมุม * พิกัดเศษส่วนอยู่ในช่วงประมาณ -2-2i ถึง 2 + 2i พิกเซลด้านนอกของชุด Mandelbrot ควรเป็นสีตามจำนวนการวนซ้ำก่อนขนาดเกิน 2 (ไม่รวม * ขาวดำ) การนับซ้ำแต่ละครั้งจะต้องมีสีที่ไม่ซ้ำกัน * และสีที่อยู่ใกล้เคียงควรแยกแยะได้ง่ายกว่าด้วยตา พิกเซลอื่น ๆ (น่าจะเป็นภายในชุด Mandelbrot) จะต้องเป็นสีดำหรือขาว ซ้ำอย่างน้อย 99 ครั้ง ไม่อนุญาตให้ใช้ศิลปะ ASCII * ยกเว้นในบางแพลตฟอร์มเท่านั้นเช่นเครื่องคิดเลขแบบกราฟิก อนุญาต: ไม่อนุญาต: (ภาพหด) เงื่อนไขการชนะ: รุ่นที่สั้นที่สุด (ขนาดเป็นไบต์) …

14
สีในดาวของเรา
เขียนโปรแกรมที่ใช้ในสตริงหรือไฟล์ข้อความที่บรรทัดแรกมีรูปแบบ width height และแต่ละบรรทัดถัดมามีแบบฟอร์ม x y intensity red green blue ที่อยู่: widthและheightอาจเป็นจำนวนเต็มบวกใด ๆ xและyอาจเป็นจำนวนเต็มใด ๆ intensity อาจเป็นจำนวนเต็มใด ๆ ที่ไม่เป็นลบ red, greenและblueอาจเป็นจำนวนเต็มตั้งแต่ 0 ถึง 255 โปรแกรมต้องส่งออกของคุณTrueColorภาพในรูปแบบใดที่พบบ่อย lossless ไฟล์ภาพที่มีขนาดโดยwidth heightแต่ละx y intensity red green blueบรรทัดแสดงถึงดาวหรือลูกโลกที่มีสีสันที่ต้องวาดลงบนภาพ อาจมีจำนวนดาวที่จะวาดรวมทั้ง 0 คุณอาจถือว่าสตริงหรือไฟล์มีการขึ้นบรรทัดใหม่ อัลกอริทึมสำหรับการวาดภาพมีดังต่อไปนี้แม้ว่าคุณจะสามารถนำไปใช้ในวิธีที่คุณต้องการตราบใดที่ผลลัพธ์เหมือนกัน: สำหรับทุกพิกเซล ( X , Y ) ในภาพ (โดยที่Xคือ 0 ที่ขอบซ้ายสุดและความกว้าง -1ที่ขอบขวาสุดและYคือ 0 ที่ขอบด้านบนและความสูง …

30
เพื่อเป็นเกียรติแก่อดัมเวสต์
อดัมเวสต์จากไปและฉันต้องการที่จะให้เกียรติความทรงจำของเขาที่นี่ใน PPCG แม้ว่าฉันจะสงสัยว่าเขารู้จักการดำรงอยู่ของเรา ในขณะที่มีหลายสิ่งที่แตกต่างมากมายที่ผู้ชายคนนี้เป็นที่รู้จักกันไม่มีใครโดดเด่นกว่าบทบาทของเขาในฐานะแบทแมนเดิม ฉันจำได้ว่าพ่อเลี้ยงของฉันยังคงเฝ้าดูแบทแมนและโรบินมาจนถึงทุกวันนี้ ความท้าทายนี้เป็นเรื่องง่ายในธรรมชาติไม่ใช่ทุกคนที่มีความซับซ้อนเช่นอดัมเวสต์ อย่างไรก็ตามมันเป็นสิ่งที่ดีที่สุดที่ฉันสามารถทำได้เพราะนี่คือภาพลักษณ์ที่โดดเด่นที่สุดในอาชีพของชายคนนี้ ฉันต้องการโพสต์ก่อนหน้านี้ แต่ฉันกำลังรอให้บางคนมาพร้อมกับสิ่งที่ดีกว่า เอาท์พุทต่อไปนี้ (มีหรือไม่มีช่องว่างต่อท้าย / ขึ้นบรรทัดใหม่): * * **** * * **** **** ******* **** ****** ******* ****** ********* ********* ********* *********************************************** ************************************************* ************************************************* ************************************************* *********************************************** ***** ********************* ***** **** *** ***** *** **** ** * *** * ** นี่คือรหัส - กอล์ฟจำนวนไบต์ต่ำสุดจะเป็นผู้ชนะ

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