คำถามติดแท็ก geometry

ความท้าทายนี้มีจุดมุ่งหมายเพื่อแก้ไขโดยใช้จัดการหรือสร้างรูปร่างหรือโครงสร้างทางเรขาคณิตอื่น ๆ

6
วงกลมที่ทับซ้อนกัน
คุณควรจะเขียนโปรแกรมหรือฟังก์ชั่นที่ได้รับNจากNตารางสี่เหลี่ยมเว้นระยะห่างเท่า ๆ กันและเอาท์พุทที่เป็นของแข็งวงกลมไว้หรือผลตอบแทนจำนวนตารางสี่เหลี่ยมที่มีการซ้อนทับบางส่วนหรือเต็มโดยวงกลมที่เป็นของแข็ง การทับซ้อนขนาด 0 (เช่นเมื่อวงกลมแตะเพียงเส้นเดียว) จะไม่ถูกนับ (ทับซ้อนเหล่านี้เกิดขึ้นที่เช่นN = 10.) ตัวอย่าง N = 8 (64 squares), Slices = 60 อินพุต N > 0จำนวนเต็ม (กริดจะมีN * Nกำลังสอง) เอาท์พุต จำนวนเต็มหมายถึงจำนวนชิ้นวงกลมทึบ ตัวอย่าง (คู่อินพุต - เอาต์พุต) Inputs: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Outputs: 1 …

5
ภาษาคำอธิบายการวาดภาพ Mondrian
ความท้าทายนี้ประกอบด้วยการเข้ารหัสล่ามสำหรับภาษาคำอธิบายภาพวาดมอนเดรียน (MPDL) นิยามภาษา ภาษาดำเนินการกับกองสี่เหลี่ยม สี่เหลี่ยมถูกกำหนดโดยพิกัดด้านซ้ายบนและพิกัดล่างขวา พิกัดจะต้องเป็นจำนวนเต็ม สแต็กเริ่มต้นด้วยสี่เหลี่ยมเดียวที่มีคุณลักษณะ(1,1,254,254) แต่ละคำสั่งมีรูปแบบต่อไปนี้: <character><integer> มีสามคำสั่ง: v<integer>: ดำเนินการแบ่งตามแนวตั้งบนสี่เหลี่ยมผืนผ้าล่าสุดในสแต็ก ณ ตำแหน่งที่ระบุโดยพารามิเตอร์ (เป็นเปอร์เซ็นต์) สี่เหลี่ยมต้นฉบับจะถูกลบออกจากสแต็กและแทนที่ด้วยสี่เหลี่ยมใหม่สองอันที่เป็นผลมาจากการแยก สี่เหลี่ยมด้านซ้ายถูกผลักลงบนสแต็กจากนั้นสี่เหลี่ยมด้านขวา เนื่องจากพิกัดสี่เหลี่ยมผืนผ้าเป็นจำนวนเต็มเศษส่วนควรถูกปัดเป็นจำนวนเต็มเล็กที่สุด h<integer>: แยกแนวนอน สี่เหลี่ยมผืนผ้าด้านบนถูกผลักลงบนสแต็กจากนั้นสี่เหลี่ยมผืนผ้าด้านล่าง c<integer>: ลบสี่เหลี่ยมล่าสุดออกจากสแต็กและวาดเป็นสีที่กำหนดเป็นพารามิเตอร์ 1 = ขาว, 2 = แดง, 3 = น้ำเงิน, 4 = เหลือง ท้าทาย เขียนโปรแกรมที่รับพารามิเตอร์เป็นคำอธิบายการทาสีและสร้างการแทนค่าบิตแมป 256x256 ของสี่เหลี่ยมที่ทาสี รูปสี่เหลี่ยมจะต้องคั่นด้วยเส้นสีดำ 3 พิกเซล สี่เหลี่ยมหนึ่งหรือสองพิกเซลควรมีพิกเซลที่ไม่ใช่สีดำซ่อนอยู่โดยพิกเซลสีดำเส้นขอบ อินพุตสามารถอ่านเป็นพารามิเตอร์หรือเป็นไฟล์ขึ้นอยู่กับคุณ คำสั่งควรคั่นด้วยช่องว่าง คุณสามารถสันนิษฐานได้ว่าไฟล์อินพุตมีไวยากรณ์ที่ถูกต้องและไม่มีการเว้นวรรคหรือนำหน้าแท็บ ฯลฯ เอาต์พุตสามารถแสดงผลได้โดยตรงบนหน้าจอหรือบันทึกลงในไฟล์ตามที่คุณต้องการ รหัสที่สั้นที่สุดชนะ ทดสอบ …

2
สร้าง n-gons ด้วยไม้บรรทัดและเข็มทิศ
ภารกิจคือการวาดรูปหลายเหลี่ยมปกติของด้าน n โดยใช้เพียงเข็มทิศและไม้บรรทัดที่ไม่มีเครื่องหมาย อินพุต (n) เป็นหนึ่งใน 10 หมายเลขต่อไปนี้: 3, 4, 5, 6, 8, 10, 12, 15, 16, 17 วิธีการ : เนื่องจากคุณมีไม้บรรทัดและเข็มทิศเท่านั้นคุณจึงสามารถวาดจุดเส้นและวงกลมได้เท่านั้น บรรทัดสามารถวาดได้เท่านั้น: ผ่านสองจุดที่มีอยู่ วงกลมสามารถวาดได้เท่านั้น: มีจุดเดียวเป็นศูนย์กลางและมีเส้นรอบวงของมันผ่านจุดที่สอง จุดสามารถวาดได้เท่านั้น: ที่จุดตัดของสองบรรทัด ที่จุดตัดของเส้นตรงและวงกลม ที่จุดตัดของวงกลมสองวง ที่จุดเริ่มต้นเมื่อคุณอาจวาด 2 คะแนนเพื่อเริ่มต้น ผ่านกระบวนการนี้ (และผ่านขั้นตอนนี้เท่านั้น) คุณจะต้องวาดเส้น n ของ n-gon ที่ร้องขอพร้อมกับการทำงานใด ๆ ที่จำเป็นเพื่อไปยังขั้นตอนนั้น แก้ไข: ตำแหน่งของจุดตัดต้องคำนวณ แต่เส้นและวงกลมอาจถูกวาดด้วยวิธีการใด ๆ ที่ให้ไว้โดยภาษา เอาท์พุทเป็นภาพของรูปหลายเหลี่ยมปกติด้าน n แสดงการทำงาน กราฟิกไม่มีข้อ …

8
คิดนอกกรอบ
คุณกำลังพยายามใส่ทรงกลมลงในกล่องแบบ 5 ด้าน แต่บางครั้งก็ไม่พอดี เขียนฟังก์ชันเพื่อคำนวณว่าทรงกลมอยู่นอกกรอบ (เหนือขอบ) กล่องเท่าใด มี 3 สถานการณ์ที่เป็นไปได้: ทรงกลมพอดีในกล่อง คำตอบจะเป็น 0 ทรงกลมตั้งอยู่บนขอบของกล่อง คำตอบจะมากกว่าครึ่งหนึ่งของปริมาณทั้งหมด ทรงกลมตั้งอยู่ที่ด้านล่างของกล่อง คุณสามารถดูแต่ละสถานการณ์ได้ที่นี่: คุณต้องเขียนโปรแกรมหรือฟังก์ชั่นเพื่อคำนวณค่านี้ให้เป็นตัวเลขที่มีนัยสำคัญอย่างน้อย 4 หลัก อินพุต: ตัวเลขจริงที่ไม่ใช่ลบ 4 ตัวในรูปแบบใดก็ได้ที่สะดวก * - ความกว้างความยาวความลึกของกล่อง (การวัดภายใน) และเส้นผ่านศูนย์กลางของทรงกลม เอาต์พุต: 1 จำนวนจริงที่ไม่เป็นลบในรูปแบบที่ใช้งานได้ * - ปริมาตรรวม (ไม่ใช่เปอร์เซ็นต์) ของทรงกลมที่อยู่นอกกล่อง * ต้องแปลงเป็น / จากสตริงทศนิยม คุณควร จำกัด การใช้ตรีโกณมิติให้มากที่สุด นี่คือการประกวดความนิยมดังนั้นคิดนอกกรอบ!

4
เห็นภาพการหารยาวด้วยศิลปะ ASCII
เขียนโปรแกรมที่แสดงภาพส่วนที่ยาวด้วย ASCII art อินพุตประกอบด้วยจำนวนเต็มสองจำนวนตัวเศษและส่วนโดยใช้รูปแบบอินพุตที่คุณเลือก ตัวอย่าง: 1234 ÷ 56: 22 ---- 56|1234 112 --- 114 112 --- 2 1002012 ÷ 12: 83501 ------- 12|1002012 96 --- 42 36 -- 60 60 -- 12 12 -- 0 ÷ 35 0 - 35|0 กฎ: การใช้งานของผู้ประกอบการส่วนการเขียนโปรแกรมภาษาที่จะได้รับอนุญาต อนุญาตให้ใช้จำนวนเต็มขนาดใหญ่ได้ เพื่อความมั่นคง: หากความฉลาดเป็นศูนย์ให้พิมพ์ศูนย์เดียวที่ท้ายกระดานดำน้ำ หากส่วนที่เหลือเป็นศูนย์อย่าพิมพ์ อย่าพิมพ์เลขศูนย์นำหน้าบนตัวเลขใด ๆ ขึ้นบรรทัดใหม่มากเกินไปที่ส่วนท้ายและช่องว่างต่อท้ายไปทางขวาจะได้รับอนุญาต การแก้ปัญหาด้วยตัวละครน้อยที่สุดชนะ …

2
ตั้งโปรแกรมคะแนนความไม่แน่นอน
งานของคุณคือการเขียนโปรแกรมฟังก์ชั่นทางคณิตศาสตร์sที่ใช้ชุดAจุดที่ไม่มีขอบเขต จำกัดในระนาบ 2D และส่งออกคะแนนไม่เป็นวงกลมs(A)ที่ตรงตามคุณสมบัติต่อไปนี้: บวกความชัดเจน : ถ้ามีเป็นวงกลมหรือเป็นเส้นตรงที่มีทุกจุดแล้วA s(A) = 0มิฉะนั้นs(A) > 0 Surjectivity:มันเป็น surjective กับตัวเลขจริงไม่เป็นลบหมายความว่าจำนวนจริงทุก nonnegative rมีเซต จำกัดของเครื่องบินดังกล่าวว่าAs(A) = r แปล Invariance: sคงที่แปลถ้าs(A) = s(A + v)ทุกเวกเตอร์และสำหรับทั้งหมดvA ชั่ง Invariance: sเป็นขนาดคงที่ถ้าs(A) = s(A * t)ทุกและสำหรับทั้งหมดt≠0A ความต่อเนื่อง sว่ากันว่าต่อเนื่องถ้าฟังก์ชั่นf(p) := s(A ∪ {p})(การทำแผนที่จุดหนึ่งpไปยังจำนวนจริง) นั้นต่อเนื่องโดยใช้ค่าสัมบูรณ์มาตรฐานกับจำนวนจริงและมาตรฐานปริภูมิแบบยุคลิดบนจุดของระนาบ การพูดอย่างไร้เหตุผลในระดับคะแนนนี้สามารถคิดได้ว่าเป็นสิ่งที่คล้ายกับค่าสัมประสิทธิ์สหสัมพันธ์ในการถดถอยเชิงเส้น รายละเอียด หน้าที่ของคุณในทางทฤษฎีต้องทำงานใน reals แต่เพื่อความท้าทายนี้คุณสามารถใช้ตัวเลขทศนิยมแทน โปรดระบุคำอธิบายของการส่งของคุณและการโต้แย้งว่าทำไมคุณสมบัติทั้งห้านี้ถือ คุณสามารถใช้สองรายการพิกัดหรือรายการของ tuples หรือรูปแบบที่คล้ายกันเป็นอินพุต …

9
เข้าร่วมห้อง
นี่คือแผนที่สมมุติว่าเป็นคุกใต้ดิน ... ########## # ##### # ##### ########## ########## ########## ########## #### ## #### ## ########## สมมติว่าฮีโร่นั้นอยู่ในห้อง A (ที่มุมบนซ้าย) และเป้าหมายของพวกเขา (เจ้าชายในความทุกข์?) อยู่ในห้อง B (ไปทางขวาล่าง) แผนที่ของเราไม่อนุญาตให้ฮีโร่ก้าวหน้าไปสู่เป้าหมาย เราต้องเพิ่มทางเดิน ... ########## # ##### # ##### ####.##### ####.##### ####.##### ####.##### #### ## #### ## ########## ที่นั่นดีกว่ามาก! กฎระเบียบ โปรแกรมหรือฟังก์ชันที่รับแผนที่ดันเจี้ยน (ประกอบด้วยแฮชและช่องว่างโดยมีแถวคั่นด้วยอักขระบรรทัดใหม่) มันจะส่งออกแผนที่ที่มีจุดเพิ่มเพื่อแสดงถึงข้อความในช่องว่างทั้งหมดซึ่งอยู่บนเส้นทางโดยตรงระหว่างอักขระช่องว่าง มันจะไม่เปลี่ยนความยาวบรรทัดหรือจำนวนบรรทัด ข้อความทั้งหมดอยู่ในสายตรงจากช่องว่างไปยังช่องว่าง ทางเดินไม่สามารถหมุนมุมได้ พวกเขาจะไม่อยู่ระหว่างช่องว่างและขอบของแผนที่ …

14
ออยเลอร์ - Poincaré-ลักษณะของ Polyhedra
กำหนดรูปสามเหลี่ยมของพื้นผิวของรูปทรงหลายเหลี่ยมที่pคำนวณของออยเลอร์-Poincaré-ลักษณะχ(p) = V-E+Fที่Vเป็นจำนวนของจุด, EจำนวนขอบและFจำนวนของใบหน้า รายละเอียด 1,2,...,Vจุดที่มีการระบุว่าเป็น สมการจะได้รับเป็นรายการโดยที่แต่ละรายการเป็นรายการของจุดยอดของใบหน้าเดียวกำหนดตามลำดับตามเข็มนาฬิกาหรือทวนเข็มนาฬิกา แม้ชื่อจะเป็นรูปสามเหลี่ยมที่มีใบหน้าที่มีมากกว่า 3 ด้าน ใบหน้าสามารถสันนิษฐานได้ว่าเป็นการเชื่อมต่ออย่างง่ายนั่นหมายความว่าขอบเขตของแต่ละใบหน้าสามารถวาดได้โดยใช้วงปิดที่ไม่ตัดตัวเองหนึ่งวง ตัวอย่าง จัตุรมุข : χ = 2จัตุรมุขนี้เป็นนูนและมี สมการที่เป็นไปได้คือ [[1,2,3], [1,3,4], [1,2,4], [2,3,4]] Cube : χ = 2ก้อนนี้เป็นนูนและมี สมการที่เป็นไปได้คือ [[1,2,3,4], [1,4,8,5], [1,2,6,5], [2,3,7,6], [4,3,7,8], [5,6,7,8]] โดนัท : โดนัท / รูปร่างแบบนี้ toroid χ = 0มี สมการที่เป็นไปได้คือ [[1,2,5,4], [2,5,6,3], [1,3,6,4], [1,2,7,9], [2,3,8,7], [1,9,8,3], …

14
Quadrants ที่ผ่านโดยเส้น
งาน เมื่อพิจารณาถึงการแสดงของเส้นให้เอาท์พุทจำนวนควอดเรนท์ที่บรรทัดนั้นผ่าน การเป็นตัวแทนที่ถูกต้องของสาย คุณสามารถแสดงบรรทัดเป็น สามลงนามจำนวนเต็มA, BและCที่แบ่งปันไม่มีปัจจัยร่วมกันและสถานที่AและBไม่ได้เป็นทั้งศูนย์ตัวแทนสายAx + By = C, สี่ลงนามจำนวนเต็ม, , และคิดเป็นเส้นผ่านจุดและหรือX1Y1X2Y2(X1, Y1)(X2, Y2) ชนิดข้อมูลที่อธิบายบรรทัดหากภาษาของคุณมีหนึ่ง (ต้องรองรับบรรทัดแนวตั้ง) คุณไม่สามารถรับอินพุตในรูปแบบใด ๆ ที่ไม่อนุญาตให้มีเส้นแนวตั้ง (เช่นรูปแบบความชัน - จุดตัด) หากคุณเลือกที่จะใช้จำนวนเต็มเป็น input [-127, 128]คุณสามารถคิดว่าพวกเขาอยู่ในช่วงรวม ข้อมูลจำเพาะ ผลลัพธ์จะเป็น 0, 2, หรือ 3 เสมอ (เส้นไม่สามารถผ่านสี่ทิศทั้งสี่ได้และจะไม่สามารถผ่านได้เพียงเส้นเดียว) เส้นบนแกนถูกพิจารณาว่าไม่ให้ผ่านจตุภาคใด ๆ เส้นที่ผ่านจุดกำเนิดนั้นจะพิจารณาให้ผ่านทางจตุภาค 2 เส้นเท่านั้น คุณไม่จำเป็นต้องส่งคืน Quadrants ใดที่ถูกส่งผ่าน (แม้ว่ากรณีทดสอบจะรวมไว้เพื่อความชัดเจน) นี่คือโค้ดกอล์ฟดังนั้นคำตอบที่สั้นที่สุดที่ถูกต้อง (วัดเป็นไบต์) ชนะ กรณีทดสอบ คุณจะต้องแปลงเป็นรูปแบบที่เหมาะสมก่อนที่จะใช้ 1x …

7
ความเสมอภาคผันผวน
เรามีวัตถุที่สั่นระหว่างจุดสองจุดจำนวนเต็ม[l, r]ที่ความเร็วของหนึ่งหน่วยต่อหน่วยเวลาที่เริ่มต้นที่เกี่ยวกับl คุณอาจจะสมมติt=0 l < rตัวอย่างเช่นถ้าวัตถุแกว่งไป[3, 6]มาเราจะได้: t=0 -> 3 t=1 -> 4 t=2 -> 5 t=3 -> 6 t=4 -> 5 t=6 -> 4 t=7 -> 3 t=8 -> 4 ฯลฯ แต่วัตถุสั่นอย่างต่อเนื่องดังนั้นเราจึงยังมีและt=0.5 -> 3.5t=3.7 -> 5.3 เมื่อให้วัตถุสองชนิดสั่นระหว่างกัน[l1, r1]ให้[l2, r2]กำหนดว่ามีเวลาใดtที่วัตถุทั้งสองแบ่งปันตำแหน่งเดียวกันหรือไม่ คุณใช้เวลาl1, r1, l2, r2ในรูปแบบที่สะดวกและส่งออกค่าจริง / เท็จ อินพุตที่แท้จริง: [[3, 6], [3, …
15 code-golf  array-manipulation  decision-problem  code-golf  math  number-theory  palindrome  integer-partitions  code-golf  math  decision-problem  geometry  code-golf  string  random  code-golf  ascii-art  code-golf  kolmogorov-complexity  primes  code-golf  kolmogorov-complexity  code-golf  graphical-output  code-golf  number-theory  primes  integer  factoring  code-golf  sequence  array-manipulation  integer  code-golf  array-manipulation  matrix  code-golf  sequence  binary  code-golf  game  cellular-automata  game-of-life  binary-matrix  code-golf  string  ascii-art  code-golf  random  generation  logic  code-golf  string  code-golf  code-golf  sequence  array-manipulation  random  apl  code-golf  code-golf  sequence  primes  code-golf  math  sequence  integer  code-golf  number  arithmetic  array-manipulation  decision-problem  code-golf  ascii-art  number  code-golf  restricted-source  quine  code-golf  chess  board-game  code-golf  math  sequence  code-golf  number  sequence  kolmogorov-complexity  code-golf  number  sequence  arithmetic  code-golf  math  number  alphabet  code-golf  ascii-art  classification  statistics  apl  code-golf  array-manipulation  matrix  code-golf  string  kolmogorov-complexity  code-golf  sequence  binary  base-conversion  binary-matrix  code-golf  string  classification  code-golf  tips  python  code-golf  combinatorics  binary  subsequence  restricted-time  code-golf  number  number-theory  code-golf  math  number  complex-numbers  code-golf  string  code-golf  string  code-golf  string  random  game  king-of-the-hill  python  code-golf  number  sequence  code-golf  number  sequence  code-golf  code-golf  math  number  array-manipulation  code-golf  array-manipulation  decision-problem  code-golf  string  code-golf  sequence  integer 

17
จัดเรียงคะแนนตามระยะเชิงเส้นในพื้นที่ 3D
รายละเอียด คุณมีพื้นที่ลูกบาศก์ 3D x,y,zของSหน่วยจำนวนเต็มขนาดเช่น0 <= x,y,z <= Sหน่วยจำนวนเต็มเช่น คุณได้รับจากวิธีการป้อนค่าเริ่มต้นอาร์เรย์ของจุดที่Pแสดงเป็นx,y,zพิกัดจำนวนเต็มในรูปแบบที่เหมาะสมตามที่คุณต้องการตัวอย่างเช่น[x1,y1,z1],[x2,y2,z2],[x3,y3,z3] ... [xn,yn,zn]ตามที่คุณต้องการตัวอย่างเช่น: Pค่าทั้งหมดจะอยู่ในพื้นที่ลูกบาศก์ 3D ดังกล่าวข้างต้นเช่น0 <= x,y,z <= Sลูกบาศก์เช่น จำนวนที่เป็นไปได้ทั้งหมดPจะเป็น1 <= P <= S3จะ คุณยังได้รับปัจจัยในx,y,zจำนวนเต็มพิกัดของจุดฐาน และขนาดลูกบาศก์B 3DS งาน เป้าหมายของคุณคือการส่งออกในรูปแบบที่คุณต้องการจุดPเรียงตามเชิงเส้น (แบบยุคลิด) ระยะทางจากจุดฐาน B กฎระเบียบ หากคุณพบจุดPที่มีระยะห่างเท่ากันมากกว่าหนึ่งจุดBคุณต้องเอาท์พุทระยะเท่ากันทั้งหมดPตามลำดับที่คุณต้องการ มีความเป็นไปได้ที่จุดหนึ่งPจะสอดคล้องกันBดังนั้นระยะทางของพวกมันคือ0คุณจะต้องส่งออกจุดนั้น นี่เป็นความท้าทายของนักเล่นกอล์ฟดังนั้นรหัสที่สั้นที่สุดชนะ ช่องโหว่มาตรฐานเป็นสิ่งต้องห้าม คำอธิบายรหัสได้รับการชื่นชม กรณีทดสอบ Input: S (size), [B (base point x,y,z)], [P1 (x,y,z)], [P2], [P3], [P4], …

2
Schläfli Convex Regular Polytope ล่าม
พื้นหลัง Schläfliสัญลักษณ์เป็นเครื่องหมายของแบบฟอร์ม {p, Q, R, ... } ที่กำหนดเรขาคณิตระดับประถมปกติและ tessellations สัญลักษณ์Schläfliเป็นคำอธิบายแบบเรียกซ้ำโดยเริ่มจากรูปหลายเหลี่ยมแบบปกติด้าน p เป็น {p} ตัวอย่างเช่น {3} เป็นรูปสามเหลี่ยมด้านเท่า {4} เป็นรูปสี่เหลี่ยมและอื่น ๆ รูปทรงหลายเหลี่ยมปกติที่มีรูปหลายเหลี่ยมหน้ารูปตัว q ปกติที่ล้อมรอบจุดยอดแต่ละจุดจะถูกแทนด้วย {p, q} ตัวอย่างเช่นลูกบาศก์มี 3 สี่เหลี่ยมล้อมรอบแต่ละจุดยอดและแสดงด้วย {4,3} polytope 4 มิติปกติที่มีเซลล์ {}, q} polyhedral รอบ ๆ แต่ละขอบจะถูกแทนด้วย {p, q, r} ตัวอย่างเช่น tesseract {4,3,3} มี 3 คิวบ์, {4,3}, รอบ ๆ ขอบ …

2
การหมุน Chebyshev จริง
นี่คือความท้าทายแรงบันดาลใจจากเซฟหมุน ฉันขอแนะนำให้ดูคำตอบที่นั่นเพื่อรับแรงบันดาลใจสำหรับความท้าทายนี้ เมื่อกำหนดจุดบนระนาบจะมีจตุรัสที่ไม่ซ้ำใคร (สี่เหลี่ยมผืนผ้าที่มีด้านเท่ากัน) ที่มีศูนย์กลางอยู่ที่จุดกำเนิดและจุดตัด ( การสาธิตเชิงโต้ตอบ ): กำหนดจุดPและระยะdกลับมาจุดที่ได้รับโดยการย้ายระยะdจากP , ทวนเข็มนาฬิกา (ตามเข็มนาฬิกาและเชิงลบ d ) พร้อมปริมณฑลของตารางที่มีศูนย์กลางอยู่ที่จุดเริ่มต้นที่ตัดพี คำตอบของคุณจะต้องแม่นยำอย่างน้อย 4 หลักทศนิยม Testcases: (0, 0), 100 -> (0, 0) (1, 1), 81.42 -> (-0.4200, 1.0000) (42.234, 234.12), 2303.34 -> (-234.1200, 80.0940) (-23, -39.234), -234.3 -> (39.2340, -21.8960) กรณีทดสอบต่อไปนี้มาจากความท้าทายเริ่มต้นโดย Martin Ender และทุกอย่างอยู่ที่d = 1 : …

5
ไกลแค่ไหนจากภายนอก?
ใช้พื้นที่ 2 มิติแบ่งออกเป็นองค์ประกอบตารางหน่วยของแกนที่มีการจัดกึ่งกลางตามระยะเวลาจำนวนเต็ม มีการกล่าวถึงขอบภายในถ้ามันแบ่งเป็นสององค์ประกอบมิฉะนั้นจะเป็นขอบภายนอก เป้าหมายของคุณคือการหาจำนวนขั้นต่ำขององค์ประกอบที่อยู่ใกล้เคียงซึ่งจะต้องสำรวจให้ถึงขอบด้านนอกโดยเริ่มจากศูนย์กลางของแต่ละองค์ประกอบหรือที่เรียกว่า traversal distanceหรือdistanceสั้น คุณสามารถเคลื่อนที่ผ่านขอบเท่านั้น (เช่นไม่มีการตัดมุม / การเคลื่อนที่ในแนวทแยง) โปรดทราบว่า "องค์ประกอบภายนอก" (องค์ประกอบที่มีขอบภายนอกอย่างน้อยหนึ่ง) ได้รับการพิจารณาว่าจำเป็นต้องสำรวจ0องค์ประกอบที่อยู่ใกล้เคียงเพื่อเข้าถึงขอบด้านนอก .. อินพุต อินพุตเป็นรายการของคู่พิกัดจำนวนเต็มที่ไม่เป็นลบซึ่งแสดงถึง (x, y) ของศูนย์กลางขององค์ประกอบทั้งหมด มันจะสันนิษฐานว่าไม่มีองค์ประกอบที่ทับซ้อนกัน (เช่นคู่ x / y ระบุองค์ประกอบ) คุณอาจไม่คิดอะไรเกี่ยวกับลำดับการป้อนองค์ประกอบ คุณสามารถแปลงต้นกำเนิดของอินพุตให้เป็นตำแหน่งใดก็ได้ (เช่น 0,0 หรือ 1,1 เป็นต้น) คุณอาจสมมติว่าองค์ประกอบอินพุตทั้งหมดเชื่อมต่อกันหรืออาจกล่าวได้ว่าเป็นไปได้ที่จะเดินทางจากองค์ประกอบหนึ่งไปยังองค์ประกอบอื่น ๆ โดยใช้กฎด้านบน โปรดทราบว่านี่ไม่ได้หมายความว่าการเชื่อมต่อภูมิภาค 2 มิตินั้นง่าย มันอาจมีรูอยู่ข้างใน ตัวอย่าง: ต่อไปนี้เป็นอินพุตที่ไม่ถูกต้อง 0,0 2,0 ไม่จำเป็นต้องตรวจสอบข้อผิดพลาด อินพุตอาจมาจากแหล่งใดก็ได้ (ไฟล์ stdio พารามิเตอร์ฟังก์ชัน …

3
ยานอวกาศไปไหน
ขึ้นอยู่กับความคิดที่แนะนำโดยZgarb ยานอวกาศกำลังเคลื่อนที่รอบกริด 3D ปกติ เซลล์ของตารางที่มีการจัดทำดัชนีที่มีจำนวนเต็มในมือขวาระบบพิกัดxyz ยานอวกาศเริ่มต้นที่จุดกำเนิดโดยชี้ไปตามแกนxบวกโดยที่แกนzบวกชี้ขึ้น ยานอวกาศจะบินไปตามเส้นทางที่กำหนดโดยลำดับการเคลื่อนที่ที่ไม่ว่างเปล่า การเคลื่อนไหวแต่ละอย่างใดอย่างหนึ่งF(orward) UDLRlrซึ่งทำให้ยานอวกาศย้ายเซลล์หนึ่งในทิศทางที่หันหน้าไปทางของตนหรือหนึ่งในหกของการหมุน สิ่งเหล่านี้สอดคล้องกับ pitch, yaw และ roll ดังนี้: ขอบคุณ Zgarb ที่สร้างไดอะแกรม UและDเปลี่ยนระดับของยานอวกาศ 90 องศา (ซึ่งทิศทางนั้นสอดคล้องกับการเคลื่อนไหวของจมูกของยานอวกาศ) Left and Right เปลี่ยนความเอียงของยานอวกาศ 90 องศา พวกเขาเป็นเพียงการเลี้ยวซ้ายและขวาปกติ left และright คือการหมุน 90 องศาซึ่งทิศทางบ่งชี้ว่าปีกใดที่เลื่อนลง โปรดทราบว่าสิ่งเหล่านี้ควรถูกตีความสัมพันธ์กับยานอวกาศเพื่อให้แกนที่เกี่ยวข้องหมุนไปพร้อมกับมัน ในแง่คณิตศาสตร์ยานอวกาศจะอยู่ในตำแหน่งเริ่มต้น(0, 0, 0)โดยชี้ไปตาม(1, 0, 0)เวกเตอร์โดย(0, 0, 1)ชี้ขึ้นด้านบน การหมุนสอดคล้องกับเมทริกซ์ต่อไปนี้ที่ใช้กับระบบพิกัด: U = ( 0 0 -1 D …

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