คำถามติดแท็ก graph-theory

สำหรับความท้าทายเกี่ยวกับกราฟโครงสร้างทางคณิตศาสตร์ที่ใช้ในการสร้างแบบจำลองความสัมพันธ์ระหว่างวัตถุ

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 

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 

5
เดินบน Hypercube
ฉันเพิ่งอ่านทฤษฎีกราฟโดยเฉพาะhypercubesและคิดเกี่ยวกับวิธีที่น่าสนใจในการสร้างเส้นทางบนพวกเขา นี่คือสิ่งที่ฉันมาด้วย ดังที่คุณอาจทราบแล้วว่าคุณสามารถสร้างไฮเปอร์คิวบ์ n- มิติได้โดยนำ n-tuples ทั้งหมดที่ประกอบไปด้วย1และ0เป็นจุดยอดและเชื่อมต่อมันถ้ามันต่างกันในหลักเดียว หากคุณตีความเลขฐานสองเหล่านี้เป็นตัวเลขจำนวนเต็มคุณจะได้กราฟที่มีจุดยอดที่เป็นตัวเลข ตัวอย่างเช่นn=3: สมมติว่าคุณต้องการที่จะใช้เวลาเดินบน hypercube 0นี้และเริ่มต้นที่จุดสุดยอด ตอนนี้คุณจะกำหนดจุดสุดยอดที่คุณต้องการเยี่ยมชมต่อไปได้อย่างไร กฎที่ฉันใช้คือนำจำนวนaจุดยอดที่คุณอยู่พลิกmod(a,n)บิตของมัน(การทำดัชนีแบบ zero-based) แล้วไปที่จุดสุดยอดที่เกิดขึ้น อย่างเป็นทางการกฎนี้สามารถกำหนดซ้ำเป็น a[m+1] = xor(a[m], 2^mod(a[m],n)). โดยทำตามกฎนี้คุณจะยังคงอยู่บนลูกบาศก์และเดินทางไปตามขอบ เส้นทางที่ได้จะมีลักษณะเช่นนี้ อย่างที่คุณเห็นคุณจะเดินเป็นวงกลม! อันที่จริงในทุกมิติและสำหรับทุกจุดเริ่มต้นเส้นทางของคุณจะจบลงด้วยการวนซ้ำ ตัวอย่างเช่นn=14และa[0]=0ดูเหมือนว่านี้ สำหรับนักวางแผนตัวยงความยาวของเส้นทางที่วางแผนไว้เป็นข้อมูลสำคัญ ดังนั้นงานของคุณคือการเขียนฟังก์ชั่นหรือโปรแกรมที่ใช้มิติ hypercube nจุดยอดเริ่มต้นa[0]เป็นอินพุตและเอาต์พุตจำนวนจุดยอดในลูปผลลัพธ์ กรณีทดสอบ n a[0] Output ----------------- 3 0 6 14 0 50 5 6 8 17 3 346 กฎระเบียบ ช่องโหว่มาตรฐานเป็นสิ่งต้องห้าม เอาต์พุต …

2
นับการจัดการรั้วสูงสุด
พื้นหลัง ฉันต้องการสร้างรั้ว ด้วยเหตุนี้ฉันจึงรวบรวมเสาจำนวนมากและติดมันกับพื้น ฉันได้รวบรวมกระดานมากมายที่ฉันจะตอกตะปูกับเสาเพื่อทำรั้วจริง ฉันมักจะถูกพาตัวไปสร้างสิ่งต่าง ๆ และส่วนใหญ่ฉันจะเอาไม้กระดานไปไว้ที่เสาจนกว่าจะไม่มีที่ว่างสำหรับใส่มัน ฉันต้องการให้คุณแจกแจงรั้วที่เป็นไปได้ที่ฉันสามารถท้ายด้วย อินพุต อินพุตของคุณคือรายการของพิกัดจำนวนเต็มสองมิติที่แสดงถึงตำแหน่งของเสาในรูปแบบที่สะดวก คุณสามารถสันนิษฐานได้ว่ามันไม่มีสิ่งที่ซ้ำกัน แต่คุณไม่สามารถคิดอะไรเกี่ยวกับคำสั่งซื้อ บอร์ดถูกแสดงโดยเส้นตรงระหว่างเสาและเพื่อความง่ายเราพิจารณาเฉพาะบอร์ดแนวนอนและแนวตั้ง สองขั้วสามารถเข้าร่วมโดยคณะกรรมการหากไม่มีเสาอื่น ๆ หรือบอร์ดระหว่างพวกเขาหมายความว่าบอร์ดไม่สามารถข้ามกันและกัน การจัดเรียงของเสาและแผงเป็นสูงสุดถ้าไม่มีบอร์ดใหม่ที่สามารถเพิ่มลงไป (เท่ากันมีทั้งเสาหรือคณะกรรมการใด ๆ ระหว่างสองขั้วในแนวนอนหรือแนวตั้งชิดก) เอาท์พุต ผลลัพธ์ของคุณคือจำนวนข้อตกลงสูงสุดที่สามารถสร้างขึ้นได้โดยใช้เสา ตัวอย่าง พิจารณารายการอินพุต [(3,0),(1,1),(0,2),(-1,1),(-2,0),(-1,-1),(0,-2),(1,-1)] มองจากด้านบนการจัดเรียงที่สอดคล้องกันของเสามีลักษณะดังนี้: o o o o o o o o มีการจัดเรียงสูงสุดสามอย่างที่สามารถสร้างได้โดยใช้เสาเหล่านี้: o o o o-o o|o o-o o----o o||| o o| | o o-o o|o o-o …

2
Downhill Maze Solver
เขาวงกตลงเขาให้เป็นชุดของแถวของช่องว่างที่คั่นหลักจาก 0 ถึง 9 รวมทั้งหนึ่ง "S" และ "X" หนึ่งที่ S หมายถึงการเริ่มต้นและ X หมายถึงการเสร็จสิ้น ในเขาวงกตที่ตกต่ำคุณสามารถไปยังพื้นที่ที่อยู่ติดกับคุณทางทิศเหนือทิศใต้ทิศตะวันออกหรือทิศตะวันตก (ไม่มีเส้นทแยงมุม) และคุณอาจไปที่ช่องว่างที่มีค่าน้อยกว่าหรือเท่ากับค่าที่คุณ กำลังเปิดอยู่ โปรแกรมควรแสดงเส้นทางเพื่อนำทางผ่านเขาวงกตในรูปแบบเดียวกับอินพุตเฉพาะพื้นที่ที่ถูกสำรวจทั้งหมดควรมี "" ในช่องว่างเหล่านั้นและช่องว่างที่ไม่ได้เข้าชมควรมี "#" อยู่ด้วย เซลล์เริ่มต้นและจุดสิ้นสุดควรเก็บ "S" และ "X" ไว้ตามลำดับ คุณสามารถสันนิษฐานได้ว่าเขามีทางออกให้เขาวงกตเสมอ อินพุตตัวอย่าง: 3 3 3 3 2 1 S 8 9 3 1 1 3 3 0 6 8 7 1 2 2 …

3
ส่วนประกอบที่เชื่อมต่อ 3x3
ความท้าทาย พิจารณากริดคิง 3x3 ดังที่แสดงในกราฟิก ASCII ต่อไปนี้: A--B--C |\/|\/| |/\|/\| D--E--F |\/|\/| |/\|/\| G--H--I คุณจะได้รับรายการอินพุตจำนวนเต็ม -9 ที่เป็นตัวแทนของการติดฉลากของโหนด ตัวอย่างเช่นอินพุต[0,1,1,2,1,0,5,5,1]แสดงถึงการติดฉลากต่อไปนี้: 0--1--1 |\/|\/| |/\|/\| 2--1--0 |\/|\/| |/\|/\| 5--5--1 เอาต์พุตของคุณคือชุดของจำนวนเต็มในอินพุตที่เชื่อมโยงกับชุดโหนด อย่างชัดเจนยิ่งขึ้นเอาต์พุตควรมีจำนวนเต็มnจากอินพุตถ้าหากnเชื่อมต่อชุดของโหนดที่มีเลเบลแล้วเท่านั้น ในตัวอย่างนี้เอาต์พุตที่ยอมรับได้จะเป็น[1,2,5]เพราะทั้งสอง0ไม่ได้เชื่อมต่อ จำนวนไบต์ต่ำสุดชนะ กฎรายละเอียด คุณสามารถเลือกการสั่งซื้อคงที่สำหรับโหนดในรายการอินพุตของคุณและคุณควรระบุสิ่งนี้ในคำตอบของคุณ ใน EFBDHCAGI [1,0,1,2,5,1,0,5,1]การสั่งซื้อการติดฉลากที่ข้างต้นจะได้รับเป็น คุณสามารถเขียนโปรแกรมเต็มหรือฟังก์ชั่น ในกรณีหลังเอาท์พุทสามารถเป็นชุดของจำนวนเต็มถ้าภาษาของคุณสนับสนุนเหล่านั้น รายการผลลัพธ์อาจมีรายการที่ซ้ำกัน แต่ความยาวของรายการต้องไม่เกิน 9 ช่องโหว่มาตรฐานไม่ได้รับอนุญาต กรณีทดสอบ ตัวเลขเหล่านี้มีตัวเลขหลักเดียวที่สอดคล้องกับตาราง ปรับให้เข้ากับคำสั่งที่คุณเลือก 011 210 => 1 2 5 551 010 …

3
เส้นทางที่สั้นที่สุดผ่านระบบทางเดียว
Rhylเมืองบ้านเกิดของฉันมีระบบการจราจรทางเดียวซึ่งดูเหมือนว่าได้รับการออกแบบมาเพื่อให้ผู้คนอยู่ห่างจากจุดหมายปลายทางของพวกเขาให้นานที่สุด งานของคุณถ้าคุณเลือกที่จะลองมันคือการผลิตโปรแกรมเพื่อให้เส้นทางที่สั้นที่สุดผ่านระบบการจราจร อินพุต อินพุตจะเปิดSTDINและจะเป็นรายการของจุดเริ่มต้นและจุดสิ้นสุดตามด้วยบรรทัดว่างตามด้วยรายการของแบบสอบถามดังนี้: A B B A B C C D D C A D C A B A ถนนแต่ละเส้นสามารถเดินทางได้ในทิศทางที่กำหนดดังนั้นในตัวอย่างข้างต้นถนน A - B เป็นถนนสองทางในขณะที่ B - C เป็นถนนเดินรถทางเดียวจาก B ถึง C การเดินทางจาก C ไป B เป็นสิ่งต้องห้าม จุดเริ่มต้นและจุดสิ้นสุดทั้งหมดจะถูกแสดงด้วยตัวอักษรตัวพิมพ์ใหญ่ตัวเดียว เอาท์พุต ผลลัพธ์ควรเป็นเส้นทางที่สั้นที่สุด (วัดจากจำนวนจุดที่เยี่ยมชม) จากจุดเริ่มต้นที่กำหนดไปยังจุดสิ้นสุดที่กำหนดสำหรับแต่ละแบบสอบถามที่ได้รับ หากไม่มีเส้นทางดังกล่าวเอาท์พุทบรรทัดว่าง หากมีเส้นทางที่สั้นที่สุดมากกว่าหนึ่งเส้นทางให้ส่งออกเส้นทางแรกเมื่อเรียงเส้นทางที่สั้นที่สุดทั้งหมดโดยใช้วิธีการทางพจนานุกรม สำหรับตัวอย่างข้างต้นผลลัพธ์จะเป็น: A B C D B …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.