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

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

30
เพิ่มอาร์เรย์
ด้วยอาร์เรย์ที่ไม่ว่างของจำนวนเต็มบวก "เพิ่มค่า" หนึ่งครั้งดังนี้: ถ้าองค์ประกอบอาเรย์ทั้งหมดเท่ากันให้ต่อท้ายเอเร1ย์ ตัวอย่างเช่น: [1] -> [1, 1] [2] -> [2, 1] [1, 1] -> [1, 1, 1] [3, 3, 3, 3, 3] -> [3, 3, 3, 3, 3, 1] อื่นเพิ่มองค์ประกอบแรกในอาร์เรย์ที่เป็นค่าต่ำสุดของอาร์เรย์ ตัวอย่างเช่น: [1, 2] -> [2, 2] [2, 1] -> [2, 2] [3, 1, 1] -> [3, 2, 1] …

30
Polyglot Anagrams 'กระทู้ของตำรวจ
ความท้าทายนี้มีสองหัวข้อ นี่คือด้ายของตำรวจ ด้ายโจรตั้งอยู่ที่นี่ ความท้าทายของคุณคือการเลือกลำดับOEISและเขียนโปรแกรมสองโปรแกรมเต็มในสองภาษาที่แตกต่างกันซึ่งสร้างรายการที่ n ในลำดับเมื่อได้รับ n ผ่าน STDIN หรืออินพุตมาตรฐานรูปแบบอื่นโดยที่ n เป็นจำนวนบวกใด ๆ อย่างไรก็ตามโปรแกรมทั้งสองของคุณจะต้องเป็นแอนนาแกรมหมายความว่าแต่ละโปรแกรมสามารถจัดเรียงใหม่จากตัวอักษรของอีกโปรแกรมได้ โปรแกรมจะต้องส่งออกทศนิยมของตัวเลขตามด้วยช่องว่างทางเลือกเพื่อ STDOUT โปรแกรมอาจส่งออกไปยัง STDERR อย่างไรก็ตามควรละเว้นและถ้ากรณีที่ซ่อนทำดังนั้นจะต้องระบุไว้อย่างชัดเจนว่าเป็นกรณีนี้ หากคุณต้องการคุณยังสามารถส่งออกด้วยรหัสตัวอักษร อย่างไรก็ตามหากคุณทำเช่นนั้นในโซลูชันที่ซ่อนอยู่คุณต้องระบุในเนื้อหาที่คุณส่ง จากนั้นคุณจะแสดงหมายเลข OEIS ซอร์สโค้ดสำหรับและชื่อของภาษาหนึ่งที่มีอยู่ โจรจะถอดรหัสของคุณหากพวกเขาพบแอนนาแกรมของการส่งต้นฉบับที่ทำงานในภาษาอื่นที่ไม่ใช่ภาษาที่คุณนำเสนอแล้ว ในการถอดรหัสคำตอบพวกเขาจะต้องค้นหาภาษาและโปรแกรมใด ๆที่สร้างลำดับและเป็นแอนนาแกรมของต้นฉบับโดยไม่จำเป็นต้องเป็นคำตอบที่คุณคิด ดังนั้นคุณจึงมีแรงจูงใจที่จะทำให้ยากที่สุดเท่าที่จะทำได้เพื่อค้นหาภาษาใด ๆ ที่ทำงานโดยใช้รายการสัญลักษณ์ของพวกเขา เกณฑ์การให้คะแนน นี่คือรหัส - กอล์ฟดังนั้นโปรแกรมที่ไม่มีรอยแตกที่สั้นที่สุดคือผู้ชนะ ภาษา ภาษาจะถูกพิจารณาว่าแตกต่างกันหากทั้งสองวิธีที่เสนอนั้นไม่สามารถทำงานได้ทั้งสองภาษา ซึ่งจะรวมถึงรุ่นที่แตกต่างกันของภาษาเดียวกันตราบใดที่วิธีแก้ปัญหาของตำรวจหรือวิธีแก้ปัญหาของโจรไม่ได้ผลิตผลลัพธ์ที่ถูกต้องในภาษาอื่น ๆ เช่นถ้ามีสองวิธีแก้ปัญหา 1 และ 2 ที่อยู่ในภาษา A และ B ตามลำดับโซลูชัน 2 ต้องไม่สร้างผลลัพธ์ที่ถูกต้องในภาษา A …

30
ใช่แน่นอนฉันเป็นผู้ใหญ่!
ฉันคิดว่าเราทำสิ่งนี้ตั้งแต่ยังเด็ก: บางเว็บไซต์ต้องการอายุขั้นต่ำ 18 ปีดังนั้นเราจึงลบสองสามปีนับจากปีเกิดและvoilàเรามี '18+' นอกจากนี้สำหรับการขี่ส่วนใหญ่ในสวนสนุกความสูงขั้นต่ำที่ต้องเข้าคือ 1.40 เมตร (ที่เนเธอร์แลนด์อย่างน้อยก็คือที่นี่) แน่นอนว่าสิ่งนี้สามารถโกงได้ง่ายกว่าอายุ แต่คุณสามารถสวมรองเท้าส้นหนาใส่ผมสวมหมวกยืนบนเท้า ฯลฯ การป้อนข้อมูล: โปรแกรม / ฟังก์ชั่นของคุณยอมรับจำนวนเต็มบวกหรือทศนิยม เอาท์พุท: อินพุตเป็นจำนวนเต็ม>= 18หรือไม่ เพียงพิมพ์อินพุต อินพุตเป็นจำนวนเต็ม0-17หรือไม่ 18พิมพ์ อินพุตเป็นทศนิยม>= 1.4หรือไม่? เพียงพิมพ์อินพุต อินพุตเป็นทศนิยม0.0-1.4หรือไม่? 1.4พิมพ์ กฏท้าทาย: สมมติว่าอินพุตจะอยู่ในช่วงของ0-122(หญิงที่เก่าแก่ที่สุดที่เคยเป็น 122) หรือ0.0-2.72(ผู้ชายที่สูงที่สุดที่เคยเป็น 2.72) คุณได้รับอนุญาตให้รับอินพุตเป็นสตริงวัตถุหรืออะไรก็ได้ที่คุณต้องการ อินพุตทศนิยมจะไม่มีทศนิยมมากกว่าสามตำแหน่งหลังจุดทศนิยม 2หรือทั้งสองไม่ได้ผลที่ถูกต้องสำหรับ2. 2.0คุณมีอิสระในการส่งออก2.00หรือ2.000แทน2.0อย่างไรก็ตาม เช่นเดียวกับอินพุทเอาท์พุทจะไม่มีทศนิยมมากกว่าสามตำแหน่งหลังจุด กฎทั่วไป: นี่คือcode-golfดังนั้นคำตอบที่สั้นที่สุดในจำนวนไบต์ชนะ อย่าปล่อยให้ภาษาโค้ดกอล์ฟกีดกันคุณจากการโพสต์คำตอบด้วยภาษาที่ไม่ได้เข้ารหัส พยายามหาคำตอบสั้น ๆ ที่เป็นไปได้สำหรับภาษาโปรแกรม 'ใด ๆ ' กฎมาตรฐานจะใช้สำหรับคำตอบของคุณดังนั้นคุณจึงได้รับอนุญาตให้ใช้ STDIN / STDOUT …

26
คณิตศาสตร์ใช้งานอย่างไรในโลกของ Anastasiya
พื้นหลัง: คณิตศาสตร์การดำเนินงานมาตรฐานเช่นการบวกพื้นฐานและการคูณในโลกแห่งความเป็นจริงการทำงานเช่นนี้: 12 + 123 = 135 และ 12 * 123 = 1476 นั่นไม่น่าสนใจและน่าเบื่อ! โรงเรียนหลายแห่งกำลังตีความสิ่งนี้เป็นแบบฝึกหัดฝึกฝนแบบฝึกหัดที่เป็นทางการ นั่นหมายถึงอาหารทางคณิตศาสตร์ที่แข็งและน่าเบื่อและไม่ใช่สิ่งที่มีไว้สำหรับความท้าทายนี้ เตรียมพร้อมที่จะเล่นสนุก ๆ กับไซต์ที่เราชื่นชอบ พิจารณากระบวนการเพิ่มตัวเลขจำนวนเต็มบวกสองตัวจากนั้นเพิ่มตัวเลขทั้งหมดของผลลัพธ์อีกครั้ง ทำซ้ำด้วยการเพิ่มจนกว่าจะมีเพียงตัวเลขเดียวเท่านั้น ตัวอย่างเช่น: ผลลัพธ์ของ12 + 123คือ 135 1 + 3 + 5 = 9การเพิ่มตัวเลขทั้งหมดของเราได้รับ 135 จำนวนขั้นตอนที่จำเป็นในการรับค่าตัวเลขหลักเดียว 9 ในการเพิ่มซ้ำนี้คือ 2 เช่นเดียวกับกระบวนการก่อนหน้าของการเพิ่มการคูณของจำนวนเต็มบวกสองตัวจะเป็นไปตามกระบวนการเดียวกัน ทวีคูณตัวเลขทั้งหมดของผลลัพธ์จากนั้นทำซ้ำขั้นตอนนี้จนกว่าจะเหลือเพียงตัวเลขเดียว ใช้ตัวอย่างข้างต้น: ผลลัพธ์ของ12 * 123คือ 1476 คูณทั้งหมดของตัวเลข 1476 1 * 4 …

9
สร้างสามเหลี่ยมโดยไม่มีสามเหลี่ยมใด ๆ
ตอนเป็นเด็กตัวเล็กฉันชอบเล่นของเล่นเหล่านี้มาก: พวกเขาอาจใช้สำหรับงานศิลปะ แต่ฉันมักจะใช้มันเพื่อคณิตศาสตร์! เศษส่วนรูปแบบและอื่น ๆ ครั้งหนึ่งฉันได้รับการท้าทายนี้: สร้างสามเหลี่ยมโดยไม่ต้องใช้แผ่นสามเหลี่ยมสีเขียว ความท้าทายนี้ทำให้ฉันงงงวยเป็นเวลานานจนกระทั่งฉันสะดุดกับวิธีที่สวยงามและเรียบง่ายในการทำด้วยสี่เหลี่ยมคางหมูเพียง 3 ตัว: /\ /_/\ /__\_\ ทีนี้ลองสามเหลี่ยมนี้แล้วหมุน: ______ \ \__/ \/ / \/ การใช้สามเหลี่ยมสองรูปนี้เราสามารถสร้างรูปสามเหลี่ยมขนาดใหญ่ขึ้นได้ นี่คือรูปสามเหลี่ยมความสูง 2: /\ /_/\ /__\_\ /\ \__/\ /_/\/ /_/\ /__\_\/__\_\ และนี่คือสามเหลี่ยมความสูง 3-7: #3 /\ /_/\ /__\_\ /\ \__/\ /_/\/ /_/\ /__\_\/__\_\ /\ \__/\ \__/\ /_/\/ /_/\/ /_/\ /__\_\/__\_\/__\_\ #4 …

19
ในทางทฤษฎีส่งออกหมายเลขของเกรแฮม
หมายเลขของ Graham Gถูกกำหนดในลักษณะนี้: u(3,n,1) = 3^n u(3,1,m) = 3 u(3,n,m) = u(3,u(3,n-1,m),m-1) [Knuth's up-arrow notation] [Conway chained arrow notation] THEN g1 = u(3,3,4) g2 = u(3,3,g1) g3 = u(3,3,g2) ... G = u(3,3,g63) คุณได้รับu(3,3,2)=7625597484987รหัสเพื่อตรวจสอบรหัสของคุณ งานของคุณคือการเขียนโปรแกรม / ฟังก์ชั่นที่จะส่งออกค่าGกำหนดอย่างแน่นอนกำหนดขนาดจำนวนเต็มและเวลาเพียงพอ อ้างอิง หมายเลขของเกรแฮม สัญลักษณ์ลูกศรขึ้นของ Knuth สัญลักษณ์ลูกศรของ Conway ลีดเดอร์บอร์ด แสดงตัวอย่างโค้ด var QUESTION_ID=83873,OVERRIDE_USER=48934;function answersUrl(e){return"http://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"http://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
เพิ่มตัวเลขสองตัว
อินพุต:สองจำนวนเต็ม เลขจำนวนเต็มฐานสิบที่เด่นกว่า แต่สามารถใช้ตัวเลขในรูปแบบอื่นได้ สิ่งเหล่านี้สามารถให้กับรหัสในอินพุตมาตรฐานเป็นอาร์กิวเมนต์ของโปรแกรมหรือฟังก์ชันหรือเป็นรายการ ผลลัพธ์:ผลรวมของพวกเขา ใช้รูปแบบเดียวกันสำหรับจำนวนเต็มเอาต์พุตเป็นจำนวนเต็มอินพุท ยกตัวอย่างเช่นการป้อนข้อมูลที่จะนำไปสู่การส่งออก5 1621 ข้อ จำกัด :ไม่มีช่องว่างมาตรฐานกรุณา นี่คือรหัสกอล์ฟคำตอบในจำนวนไบต์ต่ำสุดที่ชนะ หมายเหตุ:เรื่องนี้ค่อนข้างน่าสนใจ แต่ฉันสนใจที่จะดูว่ามันสามารถนำไปใช้ได้อย่างไร คำตอบอาจเป็นโปรแกรมหรือฟังก์ชั่นที่สมบูรณ์ แต่โปรดระบุว่ามันคืออะไร กรณีทดสอบ: 1 2 -> 3 14 15 -> 29 7 9 -> 16 -1 8 -> 7 8 -9 -> -1 -8 -9 -> -17 หรือเป็น CSV: a,b,c 1,2,3 14,15,29 7,9,16 -1,8,7 8,-9,-1 -8,-9,-17 …

6
ความท้าทายที่พูดภาษาโยดานี่คือ
ความท้าทาย ฉันคิดว่ามันค่อนข้างชัดเจนใช่ไหม คุณต้องสร้างฟังก์ชั่นหรือโปรแกรมที่รับสตริงเป็นอาร์กิวเมนต์และแสดงผลลัพธ์ของการพูด Yoda ที่สัมพันธ์กัน นี่คือโค้ดกอล์ฟดังนั้นจำนวนไบต์ที่น้อยที่สุดจึงจะชนะ การป้อนข้อมูล อินพุตอาจเป็นสตริงใด ๆ ที่ไม่มี linefeed คุณสามารถแปลสตริงได้ถ้ามันประกอบด้วยดังนี้ Subject + Verb + อย่างอื่น โดยที่Subjectเป็นคำสรรพนามส่วนตัว (ฉันคุณเธอเธอเราพวกเขา) คุณไม่จำเป็นต้องรู้ว่าคำที่สองเป็นคำกริยา หากคำแรกไม่ใช่สรรพนามอินพุตจะใช้ได้ แต่เอาต์พุตจะเป็น Too difficult, this sentence is. You have to win this code challenge -> Translatable Luke has to win this code challenge -> Untranslatable การป้อนข้อมูลสามารถลงท้ายด้วยตัวอักษร หรือ a! ไม่ใช่กับ? นอกจากนี้สตริงสามารถมี …

6
มีมดอยู่ในคิวบ์รูบิคของฉัน
ลูกบาศก์รูบิคมาตรฐานที่แก้ไข, 3 × 3 × 3 มีใบหน้าที่แตกต่างกัน 6 สีโดยแต่ละหน้าจะเป็นตารางสี่เหลี่ยมขนาด 3 × 3 ของหนึ่งสี ใบหน้าสีขาวตรงข้ามกับสีเหลืองสีส้มตรงข้ามสีแดงสีฟ้าตรงข้ามสีเขียวและเมื่อสีขาวชี้ขึ้นด้านบนสีแดงอยู่ทางซ้ายของสีน้ำเงิน: ลองจินตนาการว่ามีมดอยู่บนจัตุรัสกลางของใบหน้าสีขาวหันหน้าไปทางสีแดง คุณสามารถให้คำสั่งแก่เขา 3 คำ: ไปข้างหน้า ( ^) - ทำตามขั้นตอนในทิศทางที่เขาหันหน้าไปยังจตุรัสกริดถัดไปโดยก้าวข้ามขอบของลูกบาศก์หากจำเป็น ขวา ( >) - หมุนไปทางขวา (ตามเข็มนาฬิกา) 90 °อยู่ในตารางกริดเดียวกัน ซ้าย ( <) - หมุนไปทางซ้าย (ทวนเข็มนาฬิกา) 90 °อยู่ในตารางกริดเดียวกัน รับรายการคำสั่งโดยพลการค้นหาสีของช่องสี่เหลี่ยมที่มดเข้าชม (ไม่รวมสี่เหลี่ยมสีขาวเริ่มต้น) ตัวอย่างเช่นลำดับคำสั่ง^^>^^<^^^มีเส้นทางที่มีลักษณะดังนี้: สีของตารางสี่เหลี่ยมที่เข้าชมในการสั่งซื้อไม่นับตารางเริ่มต้นเป็นหรือเพียงแค่white red red green green green yellowwrrgggy เขียนโปรแกรมหรือฟังก์ชั่นที่ใช้ในสตริงของตัวอักษรคำสั่ง<^>และพิมพ์หรือส่งกลับสตริงของตัวละครwyrobg(สีขาว, …

30
ข้อความแบบเต็มความกว้าง
ข้อความแบบเต็มความกว้างคือข้อความที่มีช่องว่างหลังตัวละครทุกตัวรวมถึงตัวสุดท้าย ตัวอย่างเช่นประโยคแรกของคำถามนี้กลายเป็น: F u l l w i d t h t e x t i s t e x t t h a t h a s a s p a c e a f t e r e v e r y c h a r a c …
44 code-golf  string 

12
โมเลกุลกับอะตอม
ความท้าทาย เขียนโปรแกรมที่สามารถทำลายลงสูตรทางเคมีการป้อนข้อมูล (ดูด้านล่าง) element: atom-countและเอาท์พุทอะตอมที่เกี่ยวข้องในรูปแบบที่ อินพุต ตัวอย่างอินพุต: H2O ข้อมูลที่คุณป้อนจะมีองค์ประกอบอย่างน้อยหนึ่งองค์ประกอบเสมอ แต่ไม่เกินสิบรายการ โปรแกรมของคุณควรยอมรับอินพุตที่มีวงเล็บซึ่งอาจซ้อนอยู่ องค์ประกอบในสตริงจะตรงกันเสมอ[A-Z][a-z]*ซึ่งหมายความว่าพวกเขาจะเริ่มต้นด้วยตัวอักษรตัวพิมพ์ใหญ่เสมอ ตัวเลขจะเป็นตัวเลขหลักเดียวเสมอ เอาท์พุต ตัวอย่างเอาต์พุต (สำหรับอินพุตด้านบน): H: 2 O: 1 ผลลัพธ์ของคุณสามารถเลือกได้ตามด้วยบรรทัดใหม่ ทำลายโมเลกุล หมายเลขทางด้านขวาของชุดวงเล็บจะถูกแจกจ่ายไปยังแต่ละองค์ประกอบภายใน: Mg(OH)2 ควรส่งออก: Mg: 1 O: 2 H: 2 หลักการเดียวกันนี้ใช้กับแต่ละอะตอม: O2 ควรส่งออก: O: 2 และยังผูกมัด: Ba(NO2)2 ควรส่งออก: Ba: 1 N: 2 O: 4 ตัวอย่าง > Ba(PO3)2 Ba: 1 …

30
อาวุธการสอนคณิตศาสตร์
ครั้งสุดท้ายที่ฉันพยายามหาอะไรที่ง่าย ๆ ที่ไม่ซ้ำซ้อนมันก็ยากเกินไป .. หวังว่าครั้งนี้มันจะเป็นสิ่งที่ผู้มาใหม่สามารถลองได้เช่นกัน การป้อนข้อมูล: อาร์เรย์ / รายการที่มีจำนวนเต็ม / ทศนิยม (หรือสตริงที่แทนอาร์เรย์ที่มีจำนวนเต็ม / ทศนิยม) เอาท์พุท: วนรอบตัวเลขและใช้ตัวถูกดำเนินการทางคณิตศาสตร์ห้าตัวต่อไปนี้ตามลำดับนี้: เพิ่มเติม ( +); การลบ ( −); การคูณ ( *หรือ×หรือ·); จริง /กองเครื่องคิดเลข ( /หรือ÷); การยกกำลัง ( ^หรือ**) (หมายเหตุ: สัญลักษณ์ระหว่างวงเล็บจะถูกเพิ่มเป็นการชี้แจงหากภาษาการเขียนโปรแกรมของคุณใช้สัญลักษณ์ที่แตกต่างไปจากเดิมอย่างสิ้นเชิงสำหรับการดำเนินการทางคณิตศาสตร์มากกว่าตัวอย่าง ดำเนินการต่อไปเรื่อย ๆ จนกว่าคุณจะไปถึงจุดสิ้นสุดของรายการแล้วให้ผลลัพธ์ของผลรวม กฏท้าทาย: การยกกำลังด้วย 0 ( n ^ 0) ควรส่งผลเป็น 1 (รวมถึง0 ^ 0 = …

30
ตรวจสอบว่า UUID ถูกต้องโดยไม่ต้องใช้ regexes
รับอินพุตสตริงเขียนโปรแกรมที่พิมพ์ค่าความจริงเป็น STDOUT หรือเทียบเท่าหากอินพุตเป็น UUID ที่ถูกต้องโดยไม่ต้องใช้ regexes UUID ที่ถูกต้องคือ ตัวเลขฐานสิบหก 32 หลักที่แสดงในห้ากลุ่มคั่นด้วยเครื่องหมายยัติภังค์ในรูปแบบ 8-4-4-4-12 สำหรับทั้งหมด 36 ตัวอักษร (32 ตัวอักษรและตัวเลขและสี่ยัติภังค์) แหล่ง กรณีทดสอบ 0FCE98AC-1326-4C79-8EBC-94908DA8B034 => true 00000000-0000-0000-0000-000000000000 => true 0fce98ac-1326-4c79-8ebc-94908da8b034 => true 0FCE98ac-1326-4c79-8EBC-94908da8B034 => true {0FCE98AC-1326-4C79-8EBC-94908DA8B034} => false (the input is wrapped in brackets) 0GCE98AC-1326-4C79-8EBC-94908DA8B034 => false (there is a G in the input) …

30
วาดรูปแบบโบว์ลิ่ง
เป้าหมายของคุณคือการแสดงศิลปะ ASCII ของการก่อตัวในโบว์ลิ่งสิบพินซึ่งมีหมุดเหลืออยู่เพียงบางส่วน ไบต์ที่น้อยที่สุดจะเป็นผู้ชนะ หมุดนับสิบอยู่ในรูปแบบสามเหลี่ยม: O O O O O O O O O O หมุดมีป้ายกำกับตั้งแต่ 1 ถึง 10 เป็น: 7 8 9 10 4 5 6 2 3 1 วาดหมุดเป็นOและหายไปในขณะที่.การก่อตัว1 3 5 6 9 10คือ: . . O O . O O . O O การป้อนข้อมูล: สตริงที่คั่นด้วยช่องว่างที่แสดงชุดย่อยที่ไม่ว่างเปล่าของตัวเลข 1 ถึง …

12
ความเท่าเทียมกันของนายกรัฐมนตรี
จุดประสงค์ของการท้าทายนี้คือการอธิบายการเดินบนเครื่องบินที่ทิศทางของแต่ละขั้นตอนkkkถูกกำหนดโดยความเป็นอันดับแรกของและความเท่าเทียมกันของการขยายตัวแบบไบนารี โดยเฉพาะอย่างยิ่งkkk ทิศทางเริ่มต้นคงที่แล้วพูดทิศเหนือ ทุกขั้นตอนมีความยาวเท่ากัน ทิศทางของขั้นตอนสามารถเป็นนอร์ทเวสต์, เซาท์หรือตะวันออกกลางและถูกกำหนดดังต่อไปนี้: kkk หากไม่เป็นเอกสิทธิ์ทิศทางจะไม่เปลี่ยนkkk หากเป็นจำนวนเฉพาะและการขยายตัวแบบไบนารีของมีจำนวนเท่ากันให้เลี้ยวขวาkkkkkk หากเป็นจำนวนเฉพาะและการขยายตัวแบบไบนารีของมีจำนวนคี่ให้เลี้ยวซ้ายkkkkkk เป็นตัวอย่างที่ทำงานสมมติว่าทิศทางเริ่มต้นคือทิศเหนือ ขั้นตอนแรกคือ: k = 1k=1k=1ไม่สำคัญ ดังนั้นเราจึงเคลื่อนที่ไปหนึ่งก้าวในทิศทางปัจจุบันซึ่งก็คือทิศเหนือ k = 2k=2k=2เป็นจำนวนเฉพาะและส่วนขยายไบนารี10มีและจำนวนคี่ ดังนั้นเราเลี้ยวซ้ายและตอนนี้หันหน้าไปทางทิศตะวันตก เราเคลื่อนที่ไปหนึ่งก้าวในทิศทางนั้น k = 3k=3k=3เป็นจำนวนเฉพาะและการขยายฐานสองของมัน11มีและจำนวนคู่ ดังนั้นเราเลี้ยวขวาและตอนนี้หันหน้าไปทางทิศเหนือ เราเคลื่อนที่ไปหนึ่งก้าวในทิศทางนั้น k = 4k=4k=4ไม่สำคัญ ดังนั้นเราจึงเคลื่อนที่ไปหนึ่งก้าวในทิศทางปัจจุบันซึ่งก็คือทิศเหนือ ความท้าทาย การป้อนข้อมูล : บวกจำนวนเต็มNยังไม่มีข้อความNN เอาต์พุต : พล็อตของการเดิน -step ตามที่กำหนดไว้ด้านบนยังไม่มีข้อความNN กฎเพิ่มเติม ทิศทางเริ่มต้นที่สามารถเลือกได้อย่างอิสระ (ไม่จำเป็นต้องเหนือ) แต่ควรจะเหมือนกันทุกNยังไม่มีข้อความNN กฎการเปลี่ยนอาจจะตรงข้ามกับที่อธิบายไว้ข้างต้นนั่นคือเลี้ยวขวาเท่าเทียมกันคี่และซ้ายสำหรับแม้แต่; แต่มันจะต้องมีเหมือนกันทุกNยังไม่มีข้อความNN ผลลัพธ์จะต้องเป็นภาพกราฟิกของการเดิน ตัวอย่างเช่น การเดินสามารถวาดด้วยส่วนของเส้น จุดที่เยี่ยมชมสามารถแสดงด้วยเครื่องหมายเช่นจุด; มีหรือไม่มีการเชื่อมต่อส่วนของเส้น …

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