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

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

6
เอาท์พุทพีชคณิตที่แตกต่างกันทั้งหมดของเวกเตอร์
ท้าทาย: เอาต์พุตพีชคณิตที่แตกต่างกันทั้งหมดของรายการจำนวนเต็มบวก คุณอาจสมมติว่าเวกเตอร์มีจำนวนน้อยกว่า 1,000 หมายเลขเมื่อทำการทดสอบ แต่กระบวนการในทางทฤษฎีควรใช้กับเวกเตอร์ใด ๆ ที่มีมากกว่าหนึ่งหมายเลขโดยไม่คำนึงถึงขนาด ข้อ จำกัด: คุณต้อง จำกัด การใช้งานหน่วยความจำไว้ที่O (n ^ 2)โดยที่nคือจำนวนองค์ประกอบในเวกเตอร์อินพุต คุณไม่สามารถมีO (n!) นั่นหมายความว่าคุณไม่สามารถเก็บการเรียงสับเปลี่ยนทั้งหมดในหน่วยความจำ คุณต้อง จำกัด ซับซ้อนเวลาในการO (ผลขนาด * n) หากตัวเลขทั้งหมดมีค่าเท่ากันแล้วนี้จะเป็นO (n)และถ้าทุกคนมีความแตกต่างกันแล้วนี้จะเป็นO (n * n) นั่นหมายความว่าคุณไม่สามารถสร้างการเปลี่ยนแปลงและตรวจสอบกับการเรียงสับเปลี่ยนอื่น ๆ เพื่อให้แน่ใจว่ามีความชัดเจน (นั่นคือO (n! ^ 2 * n) ) การวัดเชิงประจักษ์เพื่อแสดงว่ายอมรับเวลาและข้อ จำกัด ของหน่วยความจำ คุณต้องพิมพ์ / เอาท์พุทพีชคณิตจริง ๆ (เพราะมันเป็นไปไม่ได้ที่จะเก็บไว้) หากคุณเรียกใช้โปรแกรมของคุณนานพอการเรียงสับเปลี่ยนทั้งหมดควรถูกเอาท์พุท (ในทางทฤษฎี)! …

23
Advent Challenge 5: ย้ายของขวัญไปยังท่าเรือขนส่ง!
<< ก่อนหน้า ถัดไป >> ต้องขอบคุณชุมชน PPCG ซานต้าจึงสามารถทำการผลิตของขวัญทั้งหมดของเขาใหม่และหลังจากสายการประกอบตอนนี้ของขวัญก็พร้อมที่จะย้ายไปที่ท่าเรือขนส่ง! ท่าเทียบเรือขนส่งของซานต้าแต่ละแห่งมีขนาดต่าง ๆ กันเพียงเพราะเลื่อนเลื่อนสำหรับขนย้ายนั้นมีความพิเศษสำหรับขนาดเฉพาะ (เบากว่าและจะสิ้นเปลืองหนักกว่าและเลื่อนไม่สามารถรับน้ำหนักได้) ดังนั้นเขาต้องการให้คุณช่วยเขานำของขวัญของเขามาจัดเรียงไว้ในท่าขนส่งที่ถูกต้อง ท้าทาย กำหนดรายการและช่วงท่าเรือขนส่งจัดระเบียบของขวัญให้ถูกต้องตามลำดับที่ถูกต้อง ลองมานี้ตัวอย่างเช่น: ของขวัญที่มีและช่วงที่มีท่าเรือ[5, 3, 8, 6, 2, 7][[1, 5] and [6, 10]] ของขวัญ5, 3และ2ไปลงท่าเรือแรกและของขวัญ8, 6และ7เข้าไปในท่าเรือที่สอง [[5, 3, 2], [8, 6, 7]]นี้สามารถแสดงให้เห็นว่า รายการนี้จะใกล้เคียงกับการเรียงลำดับมากกว่าอินพุต แต่stablyหมายความว่าภายในแต่ละ Dock ลำดับของของขวัญจะต้องเหมือนกับลำดับของอินพุต (มิฉะนั้นคุณสามารถเรียงลำดับรายการทั้งหมดได้) ผลลัพธ์สุดท้ายของคุณสำหรับกรณีนี้คือ[5, 3, 2, 8, 6, 7](เป็นรายการแบบเรียบ) การจัดรูปแบบข้อมูลจำเพาะ คุณจะได้รับการป้อนข้อมูลเป็นรายการแบนของจำนวนเต็มและรายชื่อของช่วงที่อยู่ในรูปแบบที่เหมาะสมใด ๆ (เช่นช่วงสำหรับกรณีดังกล่าวข้างต้นจะได้รับเป็น[[1, 5], …

7
รถไฟข้ามสะพานที่มีป้ายกำกับ
พิจารณาสะพานที่มีความยาวB ที่เกิดขึ้นจากการเรียงต่อกันที่มีป้ายกำกับด้วยตัวเลขของจำนวนเต็มบวก ตัวอย่างเช่นถ้าBเป็น 41 แล้วมันจะมีลักษณะเช่นนี้: ----------------------------------------- 12345678910111213141516171819202122232425 ทีนี้ลองนึกภาพรถไฟที่มีความยาวTข้ามสะพาน จุดซ้ายสุดของรถไฟเริ่มต้นที่ตำแหน่งX (ดัชนี 1 ตำแหน่ง) ที่จะได้รับความเข้าใจที่ดีขึ้นของปัญหาที่เกิดขึ้นขอให้โครงการของเหตุการณ์ที่มีB = 41, T = 10, X = 10 รถไฟถูกลากโดยใช้เครื่องหมายเท่ากับ ( =) และเส้น: __________ | ======== | | ======== | ----------------------------------------- 12345678910111213141516171819202122232425 รถไฟสามารถเลื่อนในแต่ละขั้นตอนโดยรวมของกระเบื้องที่ไม่ซ้ำกันที่ตั้งอยู่บน ยกตัวอย่างเช่นกระเบื้องรถไฟยืนอยู่บนข้างต้นเป็น: [1, 0, 1, 1, 1, 2, 1, 3, 1, 4]ที่ไม่ซ้ำกัน (ซ้ำ) กระเบื้อง: และผลรวมของพวกเขาคือ[1, 0, …

7
ตีกอล์ฟหลอก!
บทนำ / ความเป็นมา ในการสนทนาเมื่อเร็ว ๆ นี้ในการแชท cryptoฉันถูกท้าทายให้พูดคุย / ช่วยเหลือเกี่ยวกับการทดสอบแบบดั้งเดิมของแฟร์มาต์และหมายเลขคาร์ไมเคิล การทดสอบนี้ขึ้นอยู่กับสถานที่ตั้งที่a^(p-1) mod p==1จะถือเป็นช่วงเวลาpเสมอ แต่ไม่เสมอไปสำหรับคอมโพสิต ขณะนี้จำนวน Carmichael เป็นหลักทดสอบศัตรูที่เลวร้ายที่สุดของแฟร์มาต์: จำนวนที่คุณต้องเลือกaที่จะไม่ร่วมกับนายกรัฐมนตรีที่จะได้รับp a^(p-1) mod p!=1ทีนี้ถ้าaไม่ใช่เพื่อนร่วมคุณก็พบว่าปัจจัยที่ไม่ใช่เรื่องไร้สาระpและอย่างที่เราทุกคนรู้ว่าแฟคตอริ่งนั้นค่อนข้างยาก โดยเฉพาะอย่างยิ่งหากปัจจัยทั้งหมดมีขนาดใหญ่พอสมควร ตอนนี้คุณอาจรู้ว่าทำไมการทดสอบแฟร์มาต์ไม่ได้ถูกใช้ในทางปฏิบัติบ่อยครั้ง (มีอัลกอริธึมที่ดีกว่า) เนื่องจากมีตัวเลขที่คุณเป็นผู้พิทักษ์ ผู้โจมตี (คือปัจจัยจำนวน) ตอนนี้เรารู้แล้วว่าทำไมตัวเลขเหล่านี้ถึงน่าสนใจเราจะสร้างมันขึ้นมาให้สั้นที่สุดเท่าที่จะเป็นไปได้ดังนั้นเราสามารถจำรหัสการสร้างได้หากเราต้องการ! หมายเลขร์ไมเคิลยังเป็นที่รู้จักA002997 ใน OEIS มีความท้าทายที่เกี่ยวข้องอยู่แล้ว แต่รายการจากที่นั่นไม่สามารถแข่งขันได้ที่นี่เพราะสิ่งเหล่านี้ได้รับการปรับให้เหมาะสมกับความเร็วเมื่อเทียบกับขนาด อาร์กิวเมนต์เดียวกันถือสำหรับทิศทางผกผันรายการที่นี่มีแนวโน้มที่จะทำให้การแลกเปลี่ยนกับความเร็วในความโปรดปรานของขนาด สเปค อินพุต นี่คือมาตรฐาน ลำดับความท้าทายดังนั้นคุณจึงใช้จำนวนเต็มบวกหรือไม่ใช่ลบnเป็นอินพุต nอาจเป็นดัชนี 0- หรือ 1 ตามที่คุณต้องการ (โปรดระบุ) เอาท์พุต ผลลัพธ์ของคุณอาจเป็นnหมายเลข -m carmichael หรือnหมายเลข carmichael แรกตามที่คุณต้องการ …
9 code-golf  math  sequence  number-theory  primes  code-golf  string  code-golf  math  combinatorics  permutations  restricted-complexity  code-golf  array-manipulation  code-golf  number  sequence  code-golf  number  sequence  code-golf  binary-matrix  code-golf  math  tips  javascript  algorithm  code-golf  string  code-golf  number  sequence  code-golf  math  arithmetic  parsing  code-golf  number  sequence  primes  code-golf  string  ascii-art  geometry  integer  code-golf  geometry  code-golf  number  array-manipulation  code-golf  math  geometry  code-golf  number  sequence  arithmetic  integer  code-golf  string  kolmogorov-complexity  code-golf  number  code-golf  number  chess  code-golf  sequence  decision-problem  subsequence  code-golf  math  number  primes  code-golf  primes  permutations  code-golf  integer  probability-theory  statistics  code-golf  string  code-golf  sequence  decision-problem  parsing  board-game  code-golf  binary  graph-theory  code-golf  board-game  classification  tic-tac-toe  code-golf  ascii-art  polyglot  code-golf  date  code-golf  geometry 

13
ขยายเครือข่ายเปรียบเทียบ
ซึ่งแตกต่างจากภาษาส่วนใหญ่งูหลามประเมินa<b<cเท่าที่จะทำได้ในคณิตศาสตร์จริงเปรียบเทียบตัวเลขสามเมื่อเทียบกับการเปรียบเทียบแบบบูลไปa<b cวิธีที่ถูกต้องในการเขียนใน C (และอื่น ๆ อีกมากมาย) a<b && b<cจะเป็น ในความท้าทายนี้งานของคุณคือการขยายเครือข่ายการเปรียบเทียบที่มีความยาวตามอำเภอใจจากการเป็นตัวแทนของ Python / การใช้งานง่ายไปจนถึงการเขียนในภาษาอื่น ข้อมูลจำเพาะ ==, !=, <, >, <=, >=โปรแกรมของคุณจะต้องมีการจัดการกับผู้ประกอบการ: อินพุตจะมีกลุ่มการเปรียบเทียบโดยใช้จำนวนเต็มเท่านั้น ไม่ต้องกังวลเกี่ยวกับความแท้จริงของการเปรียบเทียบใด ๆ ระหว่างทางนี่เป็นความท้าทายที่แยกวิเคราะห์ / สร้างประโยคอย่างแท้จริง อินพุตจะไม่มีช่องว่างใด ๆ เพื่อป้องกันคำตอบที่ทำให้การแยกวิเคราะห์เป็นเรื่องเล็กน้อยโดยแบ่งช่องว่างออก อย่างไรก็ตามผลลัพธ์ของคุณอาจมีพื้นที่เดียวโดยรอบไม่ว่าจะเป็น&&'s หรือทั้งสองตัวดำเนินการเปรียบเทียบและ&&' s หรือไม่ก็ตาม แต่ก็มีความสอดคล้องกัน กรณีทดสอบ Input Output --------------------------------------------------------------- 3<4<5 3<4 && 4<5 3<4<5<6<7<8<9 3<4 && 4<5 && 5<6 && 6<7 …
9 code-golf  parsing  conversion  syntax  code-golf  sequence  primes  code-challenge  geometry  optimization  code-golf  graph-theory  code-golf  number-theory  primes  integer  code-golf  source-layout  cops-and-robbers  code-golf  source-layout  cops-and-robbers  code-golf  sequence  primes  integer  code-golf  math  number-theory  primes  rational-numbers  code-golf  math  sequence  number-theory  primes  code-golf  string  code-golf  math  combinatorics  permutations  restricted-complexity  code-golf  array-manipulation  code-golf  number  sequence  code-golf  number  sequence  code-golf  binary-matrix  code-golf  math  tips  javascript  algorithm  code-golf  string  code-golf  number  sequence  code-golf  math  arithmetic  parsing  code-golf  number  sequence  primes  code-golf  string  ascii-art  geometry  integer  code-golf  geometry  code-golf  number  array-manipulation  code-golf  math  geometry  code-golf  number  sequence  arithmetic  integer  code-golf  string  kolmogorov-complexity  code-golf  number  code-golf  number  chess  code-golf  sequence  decision-problem  subsequence  code-golf  math  number  primes  code-golf  primes  permutations  code-golf  integer  probability-theory  statistics  code-golf  string  code-golf  sequence  decision-problem  parsing  board-game  code-golf  binary  graph-theory  code-golf  board-game  classification  tic-tac-toe  code-golf  ascii-art  polyglot  code-golf  date  code-golf  geometry 

17
จำนวนเฉพาะในตัวประกอบที่สำคัญ
ฉันเห็นความท้าทายที่สำคัญอีกอย่างหนึ่งที่มาจาก PPCG และฉันรักฉันในช่วงเวลาที่เหมาะสม จากนั้นฉันก็อ่านข้อความเกริ่นนำผิดและสงสัยในสิ่งที่สมองสร้างสรรค์ได้เกิดขึ้น ปรากฎว่าคำถามที่ถูกวางเป็นเรื่องเล็กน้อย แต่ฉันสงสัยว่าเหมือนกันกับคำถามที่ฉันอ่านผิด (mis): 6 สามารถแทนด้วย 2 ^ 1 * 3 ^ 1 และ 50 สามารถแทนได้ด้วย 2 ^ 1 * 5 ^ 2 (โดยที่ ^ หมายถึง exponention) งานของคุณ: เขียนโปรแกรมหรือฟังก์ชั่นเพื่อกำหนดจำนวนช่วงเวลาที่แตกต่างกันในการแทนตัวเลข การป้อนข้อมูล: จำนวนเต็ม n เช่นที่ 1 <n <10 ^ 12 ถ่ายโดยวิธีปกติ เอาท์พุท: จำนวนเฉพาะช่วงเวลาที่จำเป็นต้องใช้เพื่อแสดงถึงปัจจัยเฉพาะที่สำคัญของ n กรณีทดสอบ: Input Factorisation Unique primes …

5
ระบบรูปไข่
บทนำ ให้ห้าคะแนนในเครื่องบินงานของคุณคือการคำนวณพื้นที่ของวงรีที่ผ่านจุดเหล่านี้ คุณสามารถสันนิษฐานได้ว่าสามารถสร้างวงรีที่ไม่เสื่อมได้เพียงหนึ่งเดียวด้วยค่าอินพุตที่กำหนด กฎระเบียบ อินพุตเป็น10จำนวนเต็มในรูปแบบที่สะดวกใด ๆ ซึ่งสอดคล้องกับxและyพิกัดของจุด ตัวอย่างเช่นคุณสามารถป้อนข้อมูลเป็นรายการ10เลขจำนวนเต็ม[x1, y1, x2, y2, ..., x5, y5]หรือเป็นแบบ[[x1, y1], [x2, y2], ..., [x5, y5]]อื่น ๆ นอกจากนี้คุณยังสามารถจัดการกับตัวเลขทศนิยมได้ แต่จำเป็นต้องมีจำนวนเต็มเท่านั้น เอาท์พุทเป็นตัวแทนของพื้นที่ของวงรี นี่อาจเป็นนิพจน์สัญลักษณ์หรือค่าทศนิยมที่มี8ความแม่นยำอย่างน้อยที่สุด นี่คือรหัสกอล์ฟดังนั้นคำตอบที่สั้นที่สุดในหน่วยไบต์ชนะ ตัวอย่างอินพุตและเอาต์พุต การป้อนข้อมูล: [-2, 3, 2, 5, 5, 3, 4, 0, 1, -3] เอาท์พุท: 62.15326783788685 ภาพของวงรีที่ผ่านจุดเหล่านี้: ตัวอย่างเพิ่มเติม: f(60, -92, -31, -10, 78, -19, -27, -35, …

3
จำนวนจุดลอยตัวโดยประมาณที่มีความแม่นยำ n หลัก
เรามีจำนวนจุดลอยrระหว่าง 0 และ 1, pและจำนวนเต็ม ค้นหาเศษส่วนของจำนวนเต็มด้วยตัวหารที่เล็กที่สุดซึ่งใกล้เคียงrกับpความแม่นยำอย่างน้อย-digit อินพุต: r(หมายเลขจุดลอยตัว) และp(จำนวนเต็ม) ผลลัพธ์: aและbจำนวนเต็มโดยที่ a/b(ลอย) ประมาณrจนกระทั่งpตัวเลข b เป็นไปได้ที่น้อยที่สุดเช่นจำนวนเต็มบวก ตัวอย่างเช่น: ถ้าr=0.14159265358979และp=9, แล้วผลที่ได้คือa=4687และb=33102, 4687/33102=0.1415926530119026เพราะ การแก้ปัญหาใด ๆ จะต้องทำงานในทางทฤษฎีด้วยความแม่นยำโดยพลการ แม่นยำหมายถึงจำนวนของตัวเลขหลังจากที่ " 0." rใน ดังนั้นหากr=0.0123และp=3แล้วควรเริ่มต้นด้วยa/b 0.012หากpตัวเลขแรกของส่วนที่เป็นเศษส่วนของr0 เป็นพฤติกรรมที่ไม่ได้กำหนดเป็นที่ยอมรับ เกณฑ์การชนะ: อัลกอริทึมเร็วที่สุดชนะ ความเร็วถูกวัดใน O (p) หากมีอัลกอริธึมที่เร็วที่สุดหลายตัว คำตอบของฉันถูกแยกออกจากกลุ่มผู้ชนะที่เป็นไปได้ ps คณิตศาสตร์ส่วนที่เป็นจริงได้ง่ายขึ้นมากเป็นดูเหมือนว่าฉันขอแนะนำให้อ่านนี้โพสต์

30
รับอินพุท int n พิมพ์ n * กลับด้าน (n)
รับจำนวนเต็มnพิมพ์ออกมาn * reversed(n) reversed(n)เป็นหมายเลขที่คุณได้รับเมื่อคุณตัวเลขของreversen reverse(512) = 215 reverse(1) = 1 reverse(101) = 101 >>>>>>>> func(5) = 5*5 = 25 func(12) = 12*21 = 252 func(11) = 11*11 = 121 func(659) = 659*956 = 630004 รหัสที่สั้นที่สุดชนะ! ลีดเดอร์บอร์ด แสดงตัวอย่างโค้ด var QUESTION_ID=144816,OVERRIDE_USER=71625;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 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 process(){var e=[];answers.forEach(function(s){var r=s.body;s.comments.forEach(function(e){OVERRIDE_REG.test(e.body)&&(r="<h1>"+e.body.replace(OVERRIDE_REG,"")+"</h1>")});var a=r.match(SCORE_REG);a&&e.push({user:getAuthorName(s),size:+a[2],language:a[1],link:s.share_link})}),e.sort(function(e,s){var …
9 code-golf  math  arithmetic  code-golf  math  integer  code-golf  arithmetic  integer  code-golf  sequence  base-conversion  palindrome  code-golf  math  primes  integer  code-golf  parsing  conversion  syntax  code-golf  sequence  primes  code-challenge  geometry  optimization  code-golf  graph-theory  code-golf  number-theory  primes  integer  code-golf  source-layout  cops-and-robbers  code-golf  source-layout  cops-and-robbers  code-golf  sequence  primes  integer  code-golf  math  number-theory  primes  rational-numbers  code-golf  math  sequence  number-theory  primes  code-golf  string  code-golf  math  combinatorics  permutations  restricted-complexity  code-golf  array-manipulation  code-golf  number  sequence  code-golf  number  sequence  code-golf  binary-matrix  code-golf  math  tips  javascript  algorithm  code-golf  string  code-golf  number  sequence  code-golf  math  arithmetic  parsing  code-golf  number  sequence  primes  code-golf  string  ascii-art  geometry  integer  code-golf  geometry  code-golf  number  array-manipulation  code-golf  math  geometry  code-golf  number  sequence  arithmetic  integer  code-golf  string  kolmogorov-complexity  code-golf  number  code-golf  number  chess  code-golf  sequence  decision-problem  subsequence  code-golf  math  number  primes  code-golf  primes  permutations  code-golf  integer  probability-theory  statistics  code-golf  string  code-golf  sequence  decision-problem  parsing  board-game  code-golf  binary  graph-theory  code-golf  board-game  classification  tic-tac-toe  code-golf  ascii-art  polyglot  code-golf  date  code-golf  geometry 

7
วันที่อยู่ในช่วง?
ให้MM/DDวันที่ ( 12/24) และช่วงวันที่เริ่มต้น / สิ้นสุด ( 11/01 - 06/24) ให้คิดออกว่าวันที่นั้นอยู่ในช่วงวันที่ที่ระบุหรือไม่ ช่วงวันที่สามารถเรียงตามลำดับ ( 05/01 - 11/01) หรือล้อมรอบในปีถัดไป ( 11/01 - 05/01) ตัวอย่าง: 12/24เป็น11/01 - 06/24= จริง 06/24เป็น11/01 - 06/24= จริง 06/24เป็น06/24 - 06/24= จริง 06/24อยู่ใน11/01 - 06/23= เท็จ 07/24อยู่ใน11/01 - 06/24= เท็จ 07/24เป็น05/01 - 11/01= จริง 07/24เป็น07/23 - 07/20= จริง …

7
สายการประกอบ Code-Golf
หมายเหตุ: ความท้าทายนี้ไม่เกี่ยวกับภาษาแอสเซมบลีที่แท้จริง ในฐานะหัวหน้าของCode-Golf Factory Inc.คุณต้องสร้างสายการประกอบเพื่อสร้างรหัสเฉพาะ วันนี้หัวหน้าคนงานขอให้คุณผลิตควาย รายละเอียด: ในการท้าทายนี้มีเป้าหมายคือการเขียนควินินเพื่อให้หมวดย่อยที่เหมาะสมเป็นควิน นี่คือ code-golf ดังนั้นจำนวนไบต์ที่น้อยที่สุด (ของโปรแกรมหลัก) จะชนะ ช่องโหว่มาตรฐานเป็นสิ่งต้องห้ามและทั้งโปรแกรมหลักและส่วนย่อยจะต้องเป็น quines จริง ส่วนย่อยจะต้องสั้นกว่าตัวละครหลักอย่างน้อย 2 ตัวซึ่งหมายความว่าคะแนนขั้นต่ำคือ 3 ไบต์ คุณต้องการเพียง 1 ส่วนย่อยที่คุณเลือกเพื่อทำงาน

14
เพิ่มขึ้นลดลงไม่มีหรือทั้งหมด?
รับสองอินพุตเวกเตอร์ / รายการที่ไม่มีตัวเลขที่มีตัวเลข1และ2สตริง (ไม่ใช่คุณไม่สามารถใช้0/1แทนได้) สตริงจะเป็นอย่างใดอย่างหนึ่งต่อไปนี้ (ในตัวพิมพ์เล็กตรงตามที่เขียนด้านล่าง: increasing decreasing ones twos all none ถ้าสตริงเป็น ____ คุณจะต้องส่งคืนดัชนี ___: increasing... โดยที่รายการเปลี่ยนจาก1เป็น2(ทุกรายการจะ2ติดตามโดยตรงหลังจาก a 1) decreasing... โดยที่รายการเปลี่ยนจาก2เป็น1(ทุกรายการจะ1ติดตามโดยตรงหลังจาก a 2) ones ... ของตัวเลขทั้งหมดนั่นคือ 1 twos ... ของตัวเลขทั้งหมดนั่นคือ 2 all ... ตัวเลขทั้งหมด none... ไม่มีตัวเลข 0ไม่เป็นไรถ้ารายการถูกทำดัชนี 1 รายการ ตัวเลขติดลบจะใช้ได้ถ้ารายการนั้นเป็นดัชนี 0 คุณสามารถส่งออกรายการหรือสตริงที่ว่างเปล่าได้ กรณีทดสอบ: สิ่งเหล่านี้เป็น 1 ดัชนี คุณสามารถเลือกได้ว่าต้องการดัชนี 1 ดัชนีหรือ …

4
Badugi ใครชนะบ้าง
แรงบันดาลใจจากความท้าทายนี้และที่เกี่ยวข้องกับคนนี้ พื้นหลัง Badugi [bæduːɡiː] เป็นตัวแปรโป๊กเกอร์วาดต่ำ เหตุการณ์$ 1K Pokerstars World Cup Of Online Poker เริ่มต้นภายใน3ชั่วโมงและฉันต้องรู้ว่ามือของฉันดีแค่ไหน! เกมนี้ใช้สำรับมาตรฐาน52ใบซึ่งมีสี่ชุดและสิบสามอันดับ ชุดมีเรียงลำดับและจะต้องติดฉลากcdhs; ทหาร - สั่งซื้อจากสูงสุดKไปต่ำสุดA- KQJT98765432Aมี เช่นดาดฟ้าเต็มอาจจะแสดงดังต่อไปนี้ (คั่นด้วยช่องว่าง): Kc Kd Kh Ks Qc Qd Qh Qs Jc Jd Jh Js Tc Td Th Ts 9c 9d 9h 9s 8c 8d 8h 8s 7c 7d 7h 7s …

1
ใหญ่กว่า, ดีกว่า (แตก) ซิป
(ได้รับแรงบันดาลใจจากความท้าทายนี้ ) ในความท้าทายเริ่มแรกคุณต้องทำซิปแนวนอนอย่างไรก็ตามเมื่อมองลงไปที่ hoodie ของฉันซิปของฉันก็จะแนวตั้งมากขึ้น (และหักนิดหน่อย): P อินพุต คุณจะได้รับสตริงเดียว ( s) และคู่ของจำนวนเต็ม ( aและb) ในรูปแบบใด ๆ ที่ไหน: a < (length-of-s / 2) b <= ((length-of-s / 2) - (a + 1)) / 6 ผลผลิตและเกณฑ์การให้คะแนน โปรแกรมของคุณอาจเป็นโปรแกรมเต็มรูปแบบหรือฟังก์ชั่นที่สร้างสตริงเดี่ยวที่มีการจัดรูปแบบที่ถูกต้องหรืออาร์เรย์ (หนึ่งรายการต่อบรรทัด) ที่คุณเลือก ช่องว่างนำหน้าและต่อท้ายและบรรทัดใหม่เป็นตัวเลือกตราบใดที่อักขระของเอาต์พุตทั้งหมดเข้าแถว เช่น. ["f r"],["u e"],["l p"],["l p"],["y i"],[" o z "],[" p n …

3
โซ่สานสองเส้น
ในคำถามนี้ฉันนิยามฟังก์ชัน "chain" เป็นฟังก์ชันที่: คือการเรียงลำดับซึ่งหมายความว่าทุกค่าจับคู่กับและถูกแมปด้วยค่าเดียว และอนุญาตให้มีค่าใด ๆ ที่สามารถรับได้จากค่าอื่น ๆ โดยการใช้งานซ้ำ ๆ ของฟังก์ชั่นหรือการผกผันของมัน มีฟังก์ชั่นมากมายที่ทำสิ่งนี้และบางฟังก์ชั่นนั้นค่อนข้างง่าย (ดูคำตอบของคำถามนั้น) ตอนนี้เรากำลังจะนิยามคลาสของฟังก์ชันที่แยกต่างหากที่ฉันจะเรียกว่า "interwoven" ฟังก์ชั่นที่สานต่อกันเป็นฟังก์ชั่นในชุดที่มีสองพาร์ทิชันอนันต์0และ1ดังกล่าวว่าฟังก์ชั่นนี้เป็นฟังก์ชั่นห่วงโซ่ทั้ง0และ1 ซึ่งหมายความว่าไม่มีค่าใน0สามารถแมปไปยังค่าใน1ภายใต้ฟังก์ชั่นหรือในทางกลับกัน งาน งานของคุณคือการเขียนรหัสที่ดำเนินการหรือกำหนดฟังก์ชั่น interwoven ในจำนวนเต็มบวก ฟังก์ชั่นของคุณสามารถเป็นอะไรก็ได้ตราบใดที่มันเป็นไปตามเกณฑ์สำหรับการผสมผสาน คุณควรรวมคำอธิบายว่าทำไมฟังก์ชั่นของคุณถูกเชื่อมโยงกันในคำตอบ มันคือ รหัสกอล์ฟ คำถามดังนั้นคำตอบจะได้คะแนนเป็นไบต์โดยไบต์น้อยจะดีขึ้น

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