การเขียนโปรแกรมปริศนา & รหัสกอล์ฟ

คำถาม & คำตอบสำหรับผู้ชื่นชอบการเขียนโปรแกรมปริศนา

30
ยืดคำ
อินพุตเป็นคำของตัวอักษรตัวพิมพ์เล็กที่ไม่คั่นด้วยช่องว่าง ขึ้นบรรทัดใหม่ในตอนท้ายเป็นตัวเลือก คำเดียวกันจะต้องส่งออกในเวอร์ชันที่แก้ไข: สำหรับตัวละครแต่ละตัวให้เพิ่มเป็นสองเท่าในครั้งที่สองที่ปรากฏในคำเดิมให้เพิ่มเป็นสามเท่าในครั้งที่สามเป็นต้น อินพุตตัวอย่าง: bonobo ตัวอย่างผลลัพธ์: bonoobbooo ใช้กฎ I / O มาตรฐาน รหัสที่สั้นที่สุดในหน่วยไบต์ชนะ การทดสอบโดย @Neil: tutu -> tuttuu queue -> queuuee bookkeeper -> boookkkeeepeeer repetitive -> repeetittiiveee uncopyrightables -> uncopyrightables abracadabra -> abraacaaadaaaabbrraaaaa mississippi -> misssiisssssssiiipppiiii

16
รหัส (มินิ) กอล์ฟ
ให้มุมมองด้านข้างของสนามมินิกอล์ฟและพลังของการแกว่งพิจารณาว่าลูกจะทำให้มันเข้าไปในหลุมหรือไม่ หลักสูตรจะอยู่ในรูปแบบนี้: ____ ____ _ __/ \ / U \ __/ \ / \_ \_/ ลูกบอลเริ่มตรงก่อนที่ชิ้นแรกของพื้นดินทางด้านซ้ายและติดตามรูปร่างของสนามจนกว่าจะถึงหลุม (ตัวพิมพ์ใหญ่Uด้านล่างระดับปัจจุบันของพื้นดิน) ถ้ามันไปถึงหลุมให้ส่งค่าความจริงออกมา พลังของการสวิงจะเป็นความเร็วเริ่มต้นของลูกบอล ลูกบอลเคลื่อนที่ไปที่ตัวละครถัดไปทางด้านขวาในการวนซ้ำแต่ละครั้งจากนั้นความเร็วจะเปลี่ยนไปขึ้นอยู่กับตัวละครที่อยู่ในขณะนี้ หากความเร็วถึง0หรือน้อยกว่าก่อนรูให้ส่งค่าความผิดพลาด _ ลดความเร็วลง 1 / ลดความเร็วลง 5 \ เพิ่มความเร็วด้วย 4 หลักสูตรสามารถเลือกที่จะเต็มไปด้วยช่องว่าง พลังของการแกว่งจะเป็นจำนวนเต็มบวกเสมอ คุณไม่จำเป็นต้องกังวลเกี่ยวกับลูกบอลที่ไปเร็วเกินไปที่จะเข้าไปในหลุมกลิ้งไปข้างหลังหรือกระโดด / กระดอนจากเนินเขา กรณีทดสอบ Input: 27 ____ ____ _ __/ \ / U \ __/ \ / \_ …

16
Shifty Eyes เลื่อนลอยฉัน
ผู้ชายที่มีรสนิยมดี ASCII ชอบที่จะเปลี่ยน ASCII Iiของ: >_> <_< >_< <_> เมื่อได้รับสายของผู้ชายที่มีรสนิยม, เว้นระยะห่างหรือแยกบรรทัด, เลื่อนIiด้านข้างไปทางซ้ายและชิดขวาบนท้องฟ้า: Ii จำแลงที่สั้นที่สุดชนะรางวัล พูดว่าอะไรนะ? เขียนโปรแกรมหรือฟังก์ชั่นที่รับสตริงของรายการอีโมติคอน ASCII สี่รายการโดยแยกช่องว่างหรือการขึ้นบรรทัดใหม่ (ด้วยการขึ้นบรรทัดใหม่ที่เป็นตัวเลือก): >_> <_< >_< <_> ตัวอย่างเช่นอินพุตอาจเป็น >_> >_> <_> หรือ >_> >_> <_> (วิธีการที่คุณรองรับนั้นขึ้นอยู่กับคุณ) อิโมติคอนแต่ละตัวจะทำการกระทำที่แตกต่างกันในIและiตัวละครซึ่งมักจะเริ่มต้นเช่นนี้: Ii >_>เลื่อนIไปทางขวาทีละหนึ่งถ้าเป็นไปได้แล้วเลื่อนiไปทางขวาทีละหนึ่ง <_<เลื่อนIไปทางซ้ายทีละหนึ่งถ้าเป็นไปได้แล้วเลื่อนiไปทางซ้ายทีละหนึ่งถ้าเป็นไปได้ >_<เลื่อนIไปทางขวาทีละหนึ่งถ้าเป็นไปได้แล้วเลื่อนiไปทางซ้ายทีละหนึ่งถ้าเป็นไปได้ <_>เลื่อนIไปทางซ้ายทีละหนึ่งถ้าเป็นไปได้แล้วเลื่อนiไปทางขวาทีละหนึ่ง Iไม่สามารถเลื่อนไปทางซ้ายได้ถ้ามันอยู่ที่ขอบด้านซ้ายของบรรทัด (เหมือนตอนเริ่มต้น) และไม่สามารถเลื่อนไปทางขวาได้ถ้าiอยู่ทางขวาของมันโดยตรง (เหมือนตอนแรก) iไม่สามารถเลื่อนไปทางซ้ายได้หากIอยู่ทางด้านซ้ายโดยตรง (เหมือนตอนแรก) แต่สามารถเลื่อนไปทางขวาได้เสมอ โปรดทราบว่าด้วยกฎเหล่านี้Iจะยังคงอยู่ทางด้านซ้ายของiและIจะพยายามเปลี่ยนก่อนiสำหรับอิโมติคอนทั้งหมด โปรแกรมหรือฟังก์ชันของคุณจำเป็นต้องพิมพ์หรือส่งคืนสตริงของIiบรรทัดสุดท้ายหลังจากใช้การเลื่อนทั้งหมดตามลำดับที่กำหนดโดยใช้ช่องว่าง ( ) หรือจุด …

30
คำพูดของสปูน
ได้รับสองคำspooneriseพวกเขาโดยการเปลี่ยนพยัญชนะกลุ่มแรกของพวกเขา ไบต์ที่น้อยที่สุดจะเป็นผู้ชนะ plaster man -> master plan blushing crow -> crushing blow litigating more -> mitigating lore strong wrangler -> wrong strangler def ghi -> ghef di few years -> yew fears พยัญชนะปรากฏขึ้นก่อนที่จะเปลี่ยนเสียงสระแรก ( aeiou) การป้อนข้อมูล:aeiouสองสตริงตัวพิมพ์เล็กที่ขึ้นต้นด้วยพยัญชนะที่แตกต่างกันและแต่ละประกอบด้วยสระ เอาท์พุท:สองสายช้อนในลำดับที่ถูกต้อง สำหรับอินพุตและ / หรือเอาต์พุตทั้งสองสตริงอาจอยู่ในรายการหรือสิ่งที่คล้ายหรือเป็นสตริงเดี่ยวที่มีตัวคั่น แสดงตัวอย่างโค้ด var QUESTION_ID=69385,OVERRIDE_USER=20260;function answersUrl(e){return"https://api.stackexchange.com/2.2/questions/69385/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 s=+e.share_link.match(/\d+/);answer_ids.push(s),answers_hash[s]=e}),e.has_more||(more_answers=!1),comment_page=1,getComments()}})}function getComments(){jQuery.ajax({url:commentUrl(comment_page++,answer_ids),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){e.items.forEach(function(e){e.owner.user_id===OVERRIDE_USER&&answers_hash[e.post_id].comments.push(e)}),e.has_more?getComments():more_answers?getAnswers():process()}})}function getAuthorName(e){return e.owner.display_name}function …
50 code-golf  string 

12
บางครั้งอเล็กซ์พูดถูก
ความท้าทายนี้คือการยกวิญญาณของเราสมัยอเล็กซ์เอที่มักจะเป็นที่ไม่ถูกต้อง สมมติว่าคุณมีเพื่อนที่ชื่ออเล็กซ์ที่ต้องการความช่วยเหลือกับตรรกะพื้นฐานและคณิตศาสตร์โดยเฉพาะความเท่าเทียมทางคณิตศาสตร์ เขาให้รายการสมการของแบบฟอร์ม[variable] = [variable]ที่ a [variable]เป็นตัวอักษรตัวพิมพ์ใหญ่ A ถึง Z เสมอ (ไม่ใช่อักษรตัวพิมพ์เล็กไม่ใช่ตัวเลขหรืออะไรก็ได้) thereforeมีอยู่คนหนึ่งสมการต่อบรรทัดในรายการยกเว้นบรรทัดเดียวเท่านั้นที่บอกว่าเป็น สมการข้างต้นthereforeทั้งหมดเป็นสถานที่ข้อเท็จจริงที่สันนิษฐานว่าเป็นจริง สมการด้านล่างthereforeทั้งหมดเป็นข้อเสนอที่ไม่ผ่านการตรวจสอบข้อเท็จจริงที่อเล็กซ์กำลังพยายามอนุมานจากสถานที่และพวกเขาอาจจะหรืออาจจะไม่จริง ตัวอย่างเช่นในรายการสมการนี้ข้อเสนอข้อสรุปเดียวที่A = Cเกิดขึ้นเป็นจริง: A = B B = C therefore A = C เป็นหน้าที่ของคุณที่จะบอกอเล็กซ์ว่าข้อเสนอทั้งหมดของเขามีเหตุผลตามมาจากสถานที่ที่กำหนดหรือไม่ นั่นคือคุณต้องบอกอเล็กซ์ว่าเขาผิดหรือถูกในข้อสรุปของเขา เขียนโปรแกรม / ฟังก์ชั่นที่ใช้ในสตริงของรายการสมการตามที่อธิบายและพิมพ์ / ส่งคืน Alex is right หากข้อสรุปทั้งหมดเป็นไปตามหลักเหตุผลจากสถานที่และจะแสดงผลลัพธ์เป็นอย่างอื่น Alex is wrong หากข้อสรุปใด ๆ ไม่เป็นไปตามเหตุผลจากสถานที่ รหัสที่สั้นที่สุดในหน่วยไบต์ชนะ อย่าลืมระวังกรณีเหล่านี้: ตัวแปรจะเท่ากับตัวเองเสมอ เช่น B …
50 code-golf  math  logic 

3
อย่า แม้ กะพริบตา
ชีวิตของคุณขึ้นอยู่กับสิ่งนี้ อย่ากระพริบตา อย่ากระพริบตา กระพริบตาและคุณจะตาย พวกมันเร็ว เร็วกว่าที่คุณเชื่อ อย่าหันหลังกลับอย่าหันหลังและอย่ากระพริบตา! โชคดี. Weeping Angelsเป็นเผ่าพันธุ์มนุษย์ต่างดาวที่ไม่สามารถเคลื่อนไหวได้ในขณะที่ถูกคนอื่นมองเห็น (แม้แต่นางฟ้าอีกคน) พวกเขาให้อาหารโดยส่งเหยื่อกลับมาทันเวลา คุณ ( หมอ ) ติดอยู่ในห้องพร้อมกับบางคนและคุณต้องไปที่ควานหาของคุณ งาน เขียนโปรแกรมที่จะให้ตัวแทน ASCII ของห้องรูปสี่เหลี่ยมผืนผ้าออกเส้นทางที่จะนำคุณไปสู่ความปลอดภัย หากทูตสวรรค์คนใดสามารถโจมตีได้ตลอดเวลาในระหว่างการดำเนินการของคุณเส้นทางนั้นจะไม่ปลอดภัย ทูตสวรรค์สามารถโจมตีได้หากสามารถมองเห็นคุณในขณะที่ไม่ได้เห็นคุณหรือทูตสวรรค์คนอื่น อินพุต อินพุตเป็นสองส่วน ก่อนอื่นทิศทางที่คุณกำลังเผชิญ (NSEW) จากนั้นในบรรทัดที่ประสบความสำเร็จเป็นตัวแทนของห้องแสดงสถานที่เริ่มต้น / สิ้นสุดและสถานที่ / หันหน้าไปทางของเทวดาทั้งหมด ตัวอย่างด้านล่างแสดงว่ามีทูตสวรรค์องค์หนึ่งหันหน้าไปทางทิศตะวันตกและคุณเริ่มหันหน้าไปทางทิศใต้ S .......... ....D..... .......... .......... .......... .......... .......... .......... .........W .......... ...T...... . - พื้นที่ว่าง D - …
50 code-golf 

30
ใช่มีความยาว 91 บรรทัด
yesจาก coreutils เป็น91 สายยาว หลายคนมีความเห็น แต่ที่ยังคงเป็นทางยาวเกินไป แก้ไขจากกันยายน 2019: ไฟล์ต้นฉบับขยายตัวในช่วงห้าปีที่ผ่านมาและขณะนี้มีความยาว 126 บรรทัด เขียนโปรแกรมที่เลียนแบบyes: ส่งออกไปยังstdoutกระแสอนันต์ของ "y \ n" ต้องมีตัวเลือกในการหยุดกระบวนการอื่นนอกจากฆ่ากระบวนการด้วยSIGKILL: แต่SIGINTและSIGPIPEใช้ได้ คุณไม่ได้รับอนุญาตให้ใช้ "y" หรือ "\ n" หรือค่า ASCII ของพวกเขา (121, 0x79, 0171, 10, 0xA หรือ 012) คำตอบที่สั้นที่สุดชนะ โบนัส: ลบ 10 จากความยาวโค้ดของคุณหากคุณสามารถรับวลีstdinและพิมพ์ออกมาแทน "y" (แต่ยังรวมถึงตัวแบ่งบรรทัด)

28
คุณคือลิงค์ที่อ่อนแอที่สุด
นี้คิงของเนินเขาท้าทายจะตามออกเกมโชว์จุดอ่อน สำหรับผู้ที่ไม่คุ้นเคยกับการแสดงประเด็นสำคัญของความท้าทายนี้เกี่ยวข้องกับคนที่คุณโหวต : หากผู้เล่นคนอื่นฉลาดกว่าคุณแสดงว่าคุณมีโอกาสน้อยที่จะได้เงินกองกลาง หากผู้เล่นคนอื่นงี่เง่ากว่าคุณแล้วคุณมีหม้อน้อยกว่าที่จะได้รับ ในตอนเริ่มต้นของแต่ละรอบพ็อตจะเริ่มต้นด้วย $ 0 กลุ่มผู้เล่น 9 คนถูกสร้างขึ้นและผู้เล่นแต่ละคนจะได้รับความเก่งกาจไม่ซ้ำใครจาก 1 ถึง 9 ในช่วงเริ่มต้นของการหมุนแต่ละรอบPot += Smartnessสำหรับผู้เล่นแต่ละคนยังอยู่ในรอบ จากนั้นผู้เล่นลงคะแนนให้ผู้เล่นที่ต้องการลบ ผู้เล่นที่โหวตมากที่สุดจะถูกลบ ในกรณีที่เสมอกันผู้เล่นที่ฉลาดขึ้นจะถูกเก็บไว้ เมื่อมีผู้เล่นเหลือเพียง 2 คนในรอบพวกเขาจะเผชิญหน้ากับการต่อสู้ด้วยปัญญา Smartness/(Smartness+OpponentSmartness)โอกาสของผู้เล่นที่ชนะคือ ผู้เล่นที่ชนะจะได้รับเงินกองกลางทั้งหมด ผู้เล่นที่ได้รับเงินมากที่สุดเมื่อจบเกมชนะ อินพุต / เอาต์พุต ทุกเทิร์นคุณจะได้รับรายชื่อคู่ต่อสู้ในปัจจุบัน คุณจะสามารถเข้าถึงความฉลาดของคุณและประวัติการลงคะแนนทั้งหมดของผู้เล่นสำหรับรอบผ่านฟังก์ชั่นในคลาสผู้เล่น ในฐานะที่เป็นเอาท์พุทคุณจะต้องส่งกลับจำนวนเต็มเดียวซึ่งเป็นตัวแทนของผู้เล่นที่คุณต้องการลงคะแนน การลงคะแนนเสียงสำหรับตัวคุณเองจะได้รับอนุญาต ( แต่ไม่แนะนำ) รอบ 9 จะทำซ้ำจนกว่าผู้เล่นทุกคนจะเล่นอย่างน้อย1,000 10,000 รอบและผู้เล่นทุกคนจะเล่นในจำนวนรอบเดียวกัน คุณสามารถค้นหาคอนโทรลเลอร์ได้ที่นี่: https://github.com/nathanmerrill/WeakestLink ในการสร้างผู้เล่นคุณจะต้องขยายคลาสผู้เล่นและเพิ่มผู้เล่นของคุณในคลาส PlayerFactory ชั้นเรียนของคุณจะต้องปฏิบัติตามกฎต่อไปนี้: การสื่อสารหรือการรบกวนกับผู้เล่นคนอื่น ๆ (รวมถึงผู้เล่นอื่นของคุณประเภทเดียวกัน) เป็นสิ่งต้องห้ามอย่างเคร่งครัด ไม่อนุญาตให้ใช้การสะท้อนและตัวแปรแบบคงที่ …

13
Magrathea 2.0 - อาคารภูเขา
ด้วยความผิดพลาดครั้งใหญ่ของเศรษฐกิจสากลทำให้ความต้องการดาวเคราะห์ที่ทำขึ้นเองลดลง ชาว Magratheans ต้องดูแลรายรับที่มั่นคงยิ่งขึ้นจากกลุ่มลูกค้าที่กว้างขึ้น ดังนั้นพวกเขาจึงคิดค้นห่วงโซ่ภูเขาที่มีของคุณเอง (หรือความเสียหายสั้น ๆ ในภูเขา) สำหรับผู้ที่มีงบประมาณน้อยกว่าซึ่งไม่สามารถมีดาวเคราะห์ที่สมบูรณ์ได้ ภูเขาที่มีการสร้างเป็นไปตามแผนของลูกค้า (aka สตริงตัวเลขและจุด) และส่งโดยใช้ ASCII ศิลปะ (ประกอบด้วย, /, \, ^และv) งาน เขียนโปรแกรมที่สมบูรณ์ซึ่งรับอินพุต (สตริงเดี่ยว) ทั้งจาก STDIN หรือเป็นอาร์กิวเมนต์และเอาต์พุตไปยัง STDOUT ปริศนานี้เป็นโค้ดกอล์ฟดังนั้นโปรดแสดงความพยายามในการเล่นกอล์ฟ อินพุต สตริงของจุดและตัวเลขที่เป็นพื้นฐานของโซ่ภูเขา แต่ละสตริงมีความยาวเท่าที่จำเป็นเพื่อรองรับภูเขาและแต่ละจุดสูงสุดจะได้รับจากตัวเลขแทนที่จะเป็นจุดซึ่งแสดงถึงความสูงของยอดเขา เอาท์พุต รุ่น ascii ของห่วงโซ่ภูเขา แต่ละหลักในอินพุตแสดงถึงจุดสูงสุดหนึ่งจุด ( ^) ที่ความสูงที่ระบุโดยตัวเลข (เช่น 9 คือความสูงสูงสุด) จะต้องไม่มียอดเขาเพิ่มเติมในผลลัพธ์ (เช่น ณ สถานที่ที่มีจุดในอินพุต) ภูเขามีรูปร่างสามเหลี่ยมเช่นลาดที่ถูกสร้างขึ้นโดยใช้/และ\ตัวละคร vผ่านที่ภูเขาสองลูกซ้อนทับกันมีรูปทรงโดยใช้ตัวอักษร ไม่มีการขึ้นบรรทัดใหม่และบรรทัดว่างเปล่า การเสริมด้วยเส้นที่มีช่องว่างต่อท้ายเป็นทางเลือก คุณอาจสมมติว่าอินพุตที่ให้นั้นถูกต้องนั่นคือมีวิธีแก้ไขตามกฎอยู่เสมอ …

10
สร้างตัวสร้างตัวเลขสุ่มที่ผ่านการทดสอบ Diehard
ในขณะที่มีคำถามเกี่ยวกับการสุ่มกอล์ฟจำนวนมากที่นี่เกี่ยวกับการสุ่ม แต่ฉันยังไม่เห็นคำถามที่ถามเพื่อสร้างเครื่องกำเนิดเลขเทียมแบบอัลกอริทึม มีสิ่งนี้ที่ขอให้คุณสร้างกระแสบิต แต่การทดสอบแบบสุ่มที่ให้ไว้นั้นไม่เข้มงวดมากและไม่ใช่รหัส - กอล์ฟ โปรแกรมที่คุณเขียนจะมีฟังก์ชั่น callable เดียวที่จะส่งกลับจำนวนเต็มแบบสุ่มจาก 0 ถึง 4294967295 ฟังก์ชั่นนี้จะต้องไม่เรียกใช้ไลบรารีหรือฟังก์ชั่นอื่น ๆ ที่ไม่ได้เขียนไว้เป็นส่วนหนึ่งของโปรแกรม หรือไลบรารี rand () ในตัวของภาษา โดยเฉพาะอย่างยิ่งคุณถูก จำกัด ให้ใช้งานตัวดำเนินการพื้นฐานของภาษาที่คุณกำลังทำงานอยู่เช่นเลขคณิตการเข้าถึงอาร์เรย์และคำสั่งควบคุมการไหลตามเงื่อนไข คะแนนของโปรแกรมของคุณถูกคำนวณดังนี้: Score = C / R โดยที่ C คือความยาวของรหัสเป็นตัวอักษรและ R คือจำนวนการทดสอบ Diehardที่เครื่องกำเนิดของคุณผ่าน (หากเครื่องสร้างหมายเลขสุ่มของคุณไม่ผ่านการทดสอบ Diehard อย่างน้อยหนึ่งการทดสอบคะแนนของมันจะไม่สิ้นสุดและไม่มีคุณสมบัติ) เครื่องมือสร้างของคุณผ่านการทดสอบ Diehard ว่าไฟล์ที่สร้างนั้นมีช่วงของค่า P ที่ปรากฏว่ามีการกระจายอย่างสม่ำเสมอตลอดช่วงเวลา [0, 1) ในการคำนวณ R ให้ใช้ตัวสร้างตัวเลขสุ่มกับเมล็ดเริ่มต้นเพื่อสร้างไฟล์ข้อมูลไบนารีขนาด 16 MB การเรียกใช้ฟังก์ชันแต่ละครั้งส่งคืนสี่ไบต์ …

30
FizzBuzz Golf ที่ Obfuscated [ปิด]
สร้าง FizzBuzz ที่สั้นที่สุดเท่าที่จะเป็นไปได้ หากต้องการได้รับการพิจารณาว่าสับสนต้องมีสิ่งต่อไปนี้อย่างน้อยหนึ่งอย่าง: ไม่มีคำใด ๆ "Fizz", "Buzz" หรือ "FizzBuzz" ไม่มีตัวเลข 3, 5 หรือ 15 ใช้ข้อใดข้อหนึ่งในวิธีที่ทำให้เข้าใจผิด ข้อควรจำ: เป้าหมายนั้นต้องสั้นและยากที่จะติดตาม ตัวอย่างโค้ดที่เป็นแรงบันดาลใจของคำถามนี้เป็นดังนี้: public class Default { enum FizzBuzz { Buzz = 1, Fizz, FizzBuzz } public static void Main(string[] args) { byte[] foo = Convert.FromBase64String("IAmGMEiCIQySYAiDJBjCIAmGMEiCIQySYA=="); MemoryStream ms = new MemoryStream(foo); byte[] myByte = …

21
อักษรย่อของสหรัฐอเมริกานั้น!
ให้ชื่อรัฐหนึ่งใน 50 รัฐทางด้านซ้ายเป็นอินพุตส่งออกรหัสไปรษณีย์สองตัวอักษรตามที่แสดงทางด้านขวา: Alabama AL Alaska AK Arizona AZ Arkansas AR California CA Colorado CO Connecticut CT Delaware DE Florida FL Georgia GA Hawaii HI Idaho ID Illinois IL Indiana IN Iowa IA Kansas KS Kentucky KY Louisiana LA Maine ME Maryland MD Massachusetts MA Michigan MI Minnesota MN Mississippi …

30
เป็ดเป็ดฟัส
รับอาร์เรย์จำนวนเต็ม: เริ่มจากหมายเลขแรก กระโดดไปข้างหน้าตำแหน่ง n โดยที่ n คือค่าของตำแหน่งปัจจุบัน ลบตำแหน่งปัจจุบันทำให้ตำแหน่งถัดไปคือตำแหน่งปัจจุบัน ไปที่ขั้นตอนที่ 2 จนกระทั่งเหลืออีกหนึ่งหมายเลข พิมพ์หมายเลขนั้น กฎระเบียบ อาร์เรย์ล้อมรอบ (หมายเลขถัดไปหลังจากหมายเลขสุดท้ายในอาร์เรย์คือหมายเลขแรก) ศูนย์ลบตัวเอง (เห็นได้ชัด) ไม่อนุญาตให้ใช้จำนวนลบเป็นอินพุต กรณีทดสอบ [1] => 1 [1,2] => 1 [1,2,3] => 3 [1,2,2] => 1 [1,2,3,4] => 1 [6,2,3,4] => 4 [1,2,3,4,5] => 5 [0,1] => 1 [0,0,2,0,0] => 0 ตัวอย่างทีละขั้นตอน [1,4,2,3,5] ^ start …

30
เสน่ห์ครั้งที่สาม
งานของคุณถ้าคุณต้องการที่จะยอมรับมันคือการเขียนโปรแกรมที่แสดงผลเป็นจำนวนเต็มบวก (สูงกว่า 0) หากซอร์สโค้ดซ้ำกันเอาต์พุตจะต้องยังคงเหมือนเดิม ส่วนที่ยุ่งยากคือถ้าพิมพ์รหัสต้นฉบับสามครั้ง(เพิ่มขึ้นสามเท่า?)ผลลัพธ์จะถูกคูณด้วย 3 กฎระเบียบ คุณต้องสร้างโปรแกรมเต็มรูปแบบ นั่นคือผลลัพธ์ของคุณจะต้องพิมพ์ไปที่ STDOUT แหล่งที่มาเริ่มต้นจะต้องมีความยาวอย่างน้อย 1 ไบต์ จำนวนเต็มทั้งสองต้องอยู่ในฐาน 10 (ห้ามส่งออกในฐานอื่นหรือด้วยเครื่องหมายทางวิทยาศาสตร์เป็นสิ่งต้องห้าม) โปรแกรมของคุณจะต้องไม่รับอินพุต (หรือมีอินพุตที่ไม่ได้ใช้และว่างเปล่า) อนุญาตให้แสดงเอาต์พุตจำนวนเต็มด้วยการเว้นวรรคต่อท้าย / นำหน้า เลขศูนย์นำหน้าได้รับอนุญาตเฉพาะในกรณีที่ตัวเลขมีความสอดคล้องเช่น: 001 - 001 - 003 หรือ 004 - 004 - 012 คุณไม่สามารถรับบรรทัดใหม่ระหว่างสำเนาของแหล่งที่มาของคุณ นี่คือรหัส - กอล์ฟดังนั้นรหัสที่สั้นที่สุด (ต้นฉบับ) ในแต่ละภาษาชนะ! มีการใช้ช่องโหว่เริ่มต้น ตัวอย่าง สมมติว่ารหัสที่มาของคุณและผลผลิตที่สอดคล้องกันของมันคือAbc 4ถ้าผมเขียนแทนและเรียกใช้การส่งออกยังคงต้องAbcAbc 4แต่ถ้าผมเขียนและเรียกใช้การส่งออกจะต้องมีAbcAbcAbc12 ขโมยมาจากการท้าทายของ Mr. Xcoder อย่างไร้ยางอาย

30
ลาก่อนอำมหิต!
พื้นหลัง สวัสดีนักกอล์ฟ! ฉันต้องการเรียนรู้ภาษาการเขียนโปรแกรมทั้งหมด! แต่ฉันก็มีความสนใจสั้น ๆ ... และการคัดลอกตัวอย่าง Hello World ทั้งหมดน่าเบื่อ ... แต่ฉันชอบไฟ! ^ W ^ ท้าทาย ดังนั้นนี่คือแผน! ฉันต้องการให้คุณทุกคนเขียนโค้ดที่เล็กที่สุดที่จะคอมไพล์พิมพ์Goodbye Cruel World!และขัดข้อง หรือเป็นความท้าทายในการบิดโบนัสพิมพ์Hello World!และขัดข้องด้วยGoodbye Cruel World! กฎระเบียบ คะแนนของคุณจะถูกนับรวมตัวอักษรที่ใช้ คำตอบจะต้องเป็นโปรแกรมที่ปฏิบัติการได้ทั้งหมด โปรแกรมของคุณต้องพิมพ์Goodbye Cruel World!ออกมาแล้วเกิดข้อผิดพลาด (ข้อผิดพลาดที่ไม่คาดคิด) สำหรับคะแนนโบนัสคุณต้องพิมพ์Hello World!เพื่อส่งออกแทน Goodbye Cruel World!แต่ข้อผิดพลาดจะต้องมี หากคุณทำโบนัสให้เสร็จคุณอาจแบ่งคะแนนของคุณเป็น 2 (รวม! ในตอนท้ายของคะแนนถ้าคุณอ้างสิทธิ์โบนัส!) ตราบใดที่เอาต์พุตมาตรฐานยังพิมพ์ออกมาและข้อผิดพลาดมาตรฐานยังคงพิมพ์ออกมาลำดับนั้นก็ไม่สำคัญ ตราบใดที่ไม่สามารถปิดกั้นไม่ให้เกิดขึ้น ผลลัพธ์จะต้องมีเนื้อหาข้างต้น; "ไม่ควรปรากฏในผลลัพธ์ ผลลัพธ์ควรมีสตริงที่ระบุและไม่มีอะไรอื่น รายงานข้อขัดข้องสามารถมีอะไรก็ได้ แต่เพื่ออ้างสิทธิ์โบนัส regex ต่อไปนี้ควรตรงกัน/Goodbye Cruel …

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