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

ความท้าทายของรหัสคือการแข่งขันสำหรับวิธีสร้างสรรค์ในการแก้ปริศนาการเขียนโปรแกรมด้วยเกณฑ์การชนะอย่างมีเป้าหมายซึ่งไม่ครอบคลุมด้วยแท็กให้คะแนนอื่น ๆ (เช่นรหัส - กอล์ฟ)

22
ปี่ธรรมชาติ # 0 - ร็อค
เป้าหมาย สร้างโปรแกรม / ฟังก์ชั่นที่รับอินพุตNตรวจสอบว่าNคู่ของจำนวนเต็มแบบสุ่มนั้นค่อนข้างดีและส่งคืนsqrt(6 * N / #coprime)หรือไม่ TL; DR ความท้าทายเหล่านี้เป็นการจำลองอัลกอริธึมที่ต้องการเพียงแค่ธรรมชาติและสมองของคุณ หากคุณต้องการ Pi ในระหว่างการเปิดเผยซอมบี้วิธีการเหล่านี้จะไม่เปลืองกระสุน ! มีอีกแปดความท้าทายที่จะมา ชำระเงินโพสต์แซนด์บ็อกซ์เพื่อให้คำแนะนำ การจำลอง เรากำลังจำลองอะไร ความน่าจะเป็นที่สองจำนวนเต็มแบบสุ่มนั้นค่อนข้างไพเราะ (เช่น coprime หรือ gcd == 1) 6/Pi/Piดังนั้นวิธีธรรมชาติในการคำนวณ Pi ก็คือการตักก้อนหินขึ้นสองถัง (หรือกำมือ) นับพวกเขา; ดูว่าgcdของพวกเขาคือ 1; ทำซ้ำ หลังจากที่ทำเช่นนี้คู่หลายครั้งจะมีแนวโน้มต่อsqrt(6.0 * total / num_coprimes) Piหากการคำนวณสแควร์รูทในโลกหลังวิกฤติทำให้คุณกังวลไม่ต้องกังวล! มีวิธีการของนิวตันสำหรับสิ่งนั้น เราจำลองสิ่งนี้ได้อย่างไร รับอินพุต N ทำตามNเวลาต่อไปนี้: สร้างเลขจำนวนเต็มบวกแบบสุ่มiและj กับ 1 <= i …
39 code-golf  math  random  pi  approximation  popularity-contest  code-golf  sequence  number-theory  binary  coding-theory  code-golf  math  3d  code-golf  code-golf  math  number  code-golf  kolmogorov-complexity  code-golf  ascii-art  graphical-output  binary-tree  code-golf  ascii-art  code-golf  ascii-art  kolmogorov-complexity  code-golf  array-manipulation  hexadecimal  code-golf  math  number  set-theory  code-golf  math  arithmetic  number-theory  integer  code-golf  string  kolmogorov-complexity  code-golf  math  sequence  arithmetic  decision-problem  code-golf  code-golf  ascii-art  code-golf  array-manipulation  parsing  code-golf  string  ascii-art  kolmogorov-complexity  code-challenge  code-golf  sequence  code-golf  number  array-manipulation  sorting  code-golf  string  function  code-golf  arithmetic  code-golf  math  sequence  number-theory  primes  restricted-source  javascript  code-challenge  polyglot  rosetta-stone  code-golf  code-golf  regular-expression  code-golf  math  code-golf  math  primes  code-golf  ascii-art  kolmogorov-complexity  binary  code-golf  math  sequence  code-golf  sequence  subsequence  code-golf  string  code-golf  parsing  music  code-golf  grid  game  path-finding  board-game  code-golf  string  binary  code-golf  array-manipulation  balanced-string  code-golf  code-golf  algorithm  code-golf  string  number  arithmetic  array-manipulation  code-golf  array-manipulation  binary-tree  tree-traversal  code-golf  code-golf  tips  code-golf  string  base-conversion  code-golf  tips  s.i.l.o.s  code-golf  string  ascii-art  code-golf  code-challenge  code-golf  game 

15
มองขึ้นไปบนฟ้า! มันเป็นอาร์เรย์ที่ยอดเยี่ยมมาก!
ได้รับแรงบันดาลใจจากคำถามนี้จากเพื่อน ๆคู่แข่งของเราในการตรวจสอบรหัส คำนิยาม อาร์เรย์ซุปเปอร์เป็นอาร์เรย์ที่แต่ละองค์ประกอบใหม่ในอาร์เรย์มีขนาดใหญ่กว่าผลรวมขององค์ประกอบทั้งหมดก่อนหน้านี้ด้วย {2, 3, 6, 13}เป็นอาเรย์ super เพราะ 3 > 2 6 > 3 + 2 (5) 13 > 6 + 3 + 2 (11) {2, 3, 5, 11}คือไม่อาร์เรย์สุดเพราะ 3 > 2 5 == 3 + 2 11 > 5 + 3 + 2 อาร์เรย์ duperเป็นอาร์เรย์ที่แต่ละองค์ประกอบใหม่ในอาร์เรย์มีขนาดใหญ่กว่าสินค้าทุกองค์ประกอบก่อนหน้านี้ด้วย {2, 3, …

3
Quine รังสีแข็งตัว
อย่างที่คุณควร (หวังว่า) รู้ว่าควินที่ผ่านการฉายรังสีนั้นเป็นควินที่คุณสามารถลบตัวละครตัวใดตัวหนึ่งออกจากและยังพิมพ์ต้นฉบับต้นฉบับที่ได้รับการแก้ไข สิ่งนี้คือโดยส่วนใหญ่คุณสามารถลบอักขระหนึ่งตัวเท่านั้น มิฉะนั้นทุกอย่างจะพัง นี่คือสิ่งที่มานี้ เป้าหมายของคุณคือสร้างควินที่ผ่านการแผ่รังสีซึ่งสามารถกำจัดตัวละครได้มากที่สุด ภาษาใด ๆ ที่เป็นไปตามกฎนั้นใช้ได้ กฎระเบียบ โปรแกรมต้องมีความยาวอย่างน้อยหนึ่งตัว ภาษาที่ใช้จะต้องทำให้สมบูรณ์ (ภาษาเช่น HQ9 + ไม่ผ่านการรับรอง) กฎอื่น ๆ ทั้งหมดที่ใช้กับ quines ปกติก็ใช้ที่นี่ โซลูชันprogram_length^(2/n)ที่มีชุดnอักขระน้อยที่สุดสามารถถูกลบออกได้ในขณะที่ยังคงพิมพ์รหัสต้นฉบับดั้งเดิมให้ชนะ

29
รหัสใกล้กับความท้าทาย: ผลรวมของจำนวนเต็ม
นี่เป็นความท้าทายที่ง่าย: กำหนดลำดับของจำนวนเต็มหาผลรวมของจำนวนเต็มทั้งหมดในนั้น แต่ด้วยความบิด คะแนนของคุณคือระยะทาง Levenshteinระหว่างรหัสของคุณและวลีต่อไปนี้ (ความท้าทาย): ให้ชุดของจำนวนเต็มหาผลรวมของจำนวนเต็มทั้งหมดในนั้น คุณอาจคิดว่าไม่มีบรรทัดใหม่หรือช่องว่างต่อท้ายในอินพุต ตัวอย่างอินพุต / เอาต์พุต: Input: 1 5 -6 2 4 5 Output: 11 Input: 1 -2 10 Output: 9 เครื่องคิดเลขออนไลน์สำหรับระยะทาง Levenshtein สามารถดูได้ที่นี่: http://planetcalc.com/1721/

5
เพิ่มตัวเลขด้วย Regex
ฉันต้องการลองความท้าทายกอล์ฟ regex รูปแบบใหม่ซึ่งขอให้คุณแก้ปัญหาการคำนวณแบบไม่ย่อยโดยไม่มีอะไรนอกจากการทดแทน regex เพื่อให้เป็นไปได้มากขึ้นและน้อยลงของงานบ้านคุณจะได้รับอนุญาตให้ใช้การทดแทนหลายอย่างหนึ่งหลังจากที่อื่น ความท้าทาย เราจะเริ่มต้นง่าย: กำหนดสตริงที่มีจำนวนเต็มบวกสองจำนวนโดยที่ตัวเลขทศนิยมคั่นด้วย a ,สร้างสตริงที่มีผลรวมของพวกเขาเช่นเดียวกับเป็นทศนิยม ดังนั้นง่ายมาก 47,987 ควรเปลี่ยนเป็น 1034 คำตอบของคุณควรใช้กับจำนวนเต็มบวกโดยพลการ รูปแบบ ทุกคำตอบควรเป็นลำดับของขั้นตอนการทดแทนแต่ละขั้นตอนประกอบด้วย regex และสตริงการแทนที่ เป็นทางเลือกสำหรับแต่ละขั้นตอนเหล่านี้ในลำดับคุณอาจเลือกที่จะทำซ้ำการทดแทนจนกว่าสตริงจะหยุดการเปลี่ยนแปลง นี่คือตัวอย่างการส่ง (ซึ่งไม่ได้แก้ปัญหาข้างต้น): Regex Modifiers Replacement Repeat? \b(\d) g |$1 No |\d <none> 1| Yes \D g <empty> No รับอินพุต123,456การส่งนี้จะประมวลผลอินพุตดังนี้: การทดแทนแรกจะถูกใช้เพียงครั้งเดียวและให้ผลลัพธ์: |123,|456 ตอนนี้การทดแทนที่สองถูกนำไปใช้ในการวนซ้ำจนกว่าสตริงจะหยุดการเปลี่ยนแปลง 1|23,|456 11|3,|456 111|,|456 111|,1|56 111|,11|6 111|,111| และสุดท้ายการทดแทนที่สามจะถูกนำมาใช้ครั้งเดียว: 111111 …

14
การเขียนโปรแกรมด้วย Sporadic Shift Key
แป้นพิมพ์ของคุณมีบางอย่างผิดปกติ Shiftที่สำคัญมีความคิดของตัวเอง ทุกครั้งที่คุณพิมพ์ตัวละครคุณจะไม่รู้เลยว่ามันจะออกมาหรือไม่ (แม้ว่าจะเป็น 50-50) นอกจากปุ่มอักขระมาตรฐานแล้วไม่มีอะไรบนแป้นพิมพ์ที่ใช้งานได้ ไม่มีเมาส์หรือวิธีการอินพุตอื่น อย่างใดคุณก็รู้วิธีเดียวที่จะแก้ไขสิ่งต่าง ๆ คือการเขียนโปรแกรมที่ส่งออกDear Computer, please stop giving me shift!ไปยัง stdout โชคดีที่ IDE ของคุณเปิดอยู่และคุณสามารถเรียกใช้โปรแกรมได้ แต่แน่นอนว่าเมื่อคุณพิมพ์คุณจะไม่ทราบว่าตัวละครใดที่จะถูกเลื่อน คุณจะใช้ลำดับของการกดปุ่มใดในการเขียนโปรแกรมที่มีโอกาสที่ดีที่สุดในการลองครั้งแรก รายละเอียด คุณกำลังใช้แป้นพิมพ์ QWERTY มาตรฐานดังนั้นจึงมี 50 ตัวอักษรที่คุณสามารถกดได้ รุ่นที่ไม่เปลี่ยนแปลง (47 เท่านั้น): `1234567890-=qwertyuiop[]\asdfghjkl;'zxcvbnm,./ รุ่นที่เปลี่ยน (47 เท่านั้น): ~!@#$%^&*()_+QWERTYUIOP{}|ASDFGHJKL:"ZXCVBNM<>? 3 ปุ่มสุดท้ายคือEnter, TabและSpace, ซึ่งเหมือนกันคือเลื่อนและไม่เปลี่ยน ลำดับของ N ของตัวละครเหล่านี้มี 2 N - (จำนวนช่องว่าง)วิธีที่มันอาจจะถูกส่งออกถ้าคุณพิมพ์ด้วยแป้นพิมพ์ผิดพลาดของคุณ ยกตัวอย่างเช่นการพิมพ์A Space mอาจมีผล …

6
เพื่อ Vectory! - Vector Racing Grand Prix
ผู้ใช้ CarpetPython โพสต์สิ่งใหม่เกี่ยวกับปัญหานี้ซึ่งให้ความสำคัญกับโซลูชั่นฮิวริสติกมากขึ้นเนื่องจากมีพื้นที่การค้นหาเพิ่มขึ้น โดยส่วนตัวฉันคิดว่าความท้าทายนั้นดีกว่าของฉันมากดังนั้นลองพิจารณาดูสิ! Vector racing เป็นเกมเสพติดที่สามารถเล่นได้ด้วยปากกาและแผ่นกระดาษสี่เหลี่ยมจตุรัส คุณวาดสนามแข่งตามอำเภอใจลงบนกระดาษกำหนดจุดเริ่มต้นและจุดสิ้นสุดจากนั้นให้คุณควบคุมรถขนาดจุดของคุณในลักษณะเลี้ยว ไปให้ถึงจุดสิ้นสุดให้เร็วที่สุดเท่าที่จะทำได้ แต่ระวังอย่าให้ถูกกำแพง! ติดตาม แผนที่เป็นกริดสองมิติโดยที่แต่ละเซลล์มีพิกัดจำนวนเต็ม คุณย้ายไปที่เซลล์กริด เซลล์กริดแต่ละเซลล์เป็นส่วนหนึ่งของแทร็กหรือเป็นกำแพง หนึ่งเซลล์ติดตามคือพิกัดเริ่มต้น มีการกำหนดอย่างน้อยหนึ่งเซลล์การติดตามเป็นเป้าหมาย การลงจอดบนสิ่งเหล่านี้เสร็จสิ้นการแข่งขัน เซลล์เป้าหมายหลายเซลล์ไม่จำเป็นต้องเชื่อมต่อ ขับรถ (0, 0)รถของคุณเริ่มต้นที่ได้รับการประสานงานและด้วยความเร็วเวกเตอร์ ในแต่ละเทิร์นคุณสามารถปรับแต่ละส่วนของความเร็ว±1ได้ จากนั้นเวกเตอร์ความเร็วที่ได้จะถูกเพิ่มไปยังตำแหน่งรถของคุณ ภาพอาจช่วยได้! วงกลมสีแดงคือตำแหน่งของคุณในที่สุด วงกลมสีน้ำเงินคือตำแหน่งปัจจุบันของคุณ ความเร็วของคุณคือเวกเตอร์จากสีแดงถึงวงกลมสีน้ำเงิน ในเทิร์นนี้ขึ้นอยู่กับวิธีที่คุณปรับความเร็วของคุณคุณอาจย้ายไปยังวงกลมสีเขียวใด ๆ หากคุณที่ดินในผนังที่คุณสูญเสียทันที งานของคุณ คุณเดา: เขียนโปรแกรมที่ให้สนามแข่งเป็นอินพุทนำพารถไปยังเซลล์เป้าหมายหนึ่งในไม่กี่รอบเท่าที่จะทำได้ โซลูชันของคุณควรสามารถจัดการแทร็กตามอำเภอใจได้ดีพอสมควรและไม่ได้รับการปรับให้เหมาะสมกับกรณีทดสอบที่มีให้โดยเฉพาะ อินพุต เมื่อโปรแกรมของคุณถูกเรียกใช้อ่านจาก stdin : target n m [ASCII representation of an n x m racetrack] time …

8
ตามล่า Wumpus
ตอนที่ฉันยังเป็นเด็กอยู่เด็ก ๆ จะเดินเข้าไปในร้านคอมพิวเตอร์และเล่น Hunt the Wumpus จนกว่าพนักงานจะเตะเราออกไป มันเป็นเกมง่ายๆที่เขียนโปรแกรมได้ที่คอมพิวเตอร์ที่บ้านในช่วงกลางปี ​​1970 เครื่องจักรจึงเป็นพื้นฐานที่แทนที่จะเป็นไมโครโปรเซสเซอร์ที่มีขนาดเท่าลูกไก่ฉันคิดว่าบางคนอาจมีลูกไก่ตัวจริงอยู่ในนั้น มาสร้างยุคสมัยนั้นด้วยการจำลองเกมบนฮาร์ดแวร์ที่ทันสมัย ผู้เล่นเริ่มต้นในห้องสุ่มบนแผนที่ icosahedral (ดังนั้นมีทั้งหมด 20 ห้องเชื่อมต่อกันเหมือนใบหน้าของ icosahedron และทุกห้องมีทางออกสามทาง) Wumpus เริ่มต้นในห้องอื่นที่สุ่มเลือก และกลิ่นของมันสามารถตรวจจับได้ในห้องใดห้องหนึ่งในสามห้องที่อยู่ติดกับที่ตั้งแม้ว่าจะไม่สามารถบอกทิศทางของกลิ่นได้ เกมรายงานเฉพาะ "คุณได้กลิ่น wumpus" ผู้เล่นถือธนูและลูกธนูจำนวนอนันต์ซึ่งเขาสามารถยิงได้ตลอดเวลาเข้าไปในห้องด้านหน้าของเขา หากวุสปัสอยู่ในห้องนั้นจะตายและผู้เล่นชนะ หากวุสตัสไม่ได้อยู่ในห้องนั้นจะตกใจและย้ายไปยังห้องใดห้องหนึ่งในสามห้องที่เชื่อมต่อกับที่ตั้งปัจจุบัน หนึ่งห้องที่เลือกแบบสุ่ม (รับประกันว่าจะไม่เป็นห้องที่ผู้เล่นเริ่ม) มีหลุมที่ลึกที่สุด หากผู้เล่นอยู่ในห้องใด ๆ ที่อยู่ติดกับหลุมเขารู้สึกถึงลม แต่ไม่มีเงื่อนงำว่าประตูสายลมมาจากไหน ถ้าเขาเดินเข้าไปในห้องพร้อมกับหลุมเขาตายและ wumpus ชนะ Wumpus ไม่ได้รับผลกระทบจากหลุม หากผู้เล่นเดินเข้าไปในห้องของ wumpus หรือถ้า wumpus เดินเข้าไปในห้องของผู้เล่น wumpus จะชนะ ผู้เล่นระบุทิศทางที่เขาเผชิญกับตัวเลข (1 = ขวา, …

26
สร้างคำศัพท์
ความท้าทาย งานของคุณคือการสร้างโปรแกรมที่รับอินพุตสตริงใด ๆ และส่งออกอินพุตในรูปแบบกำลังสอง สตริงว่างควรส่งคืนสตริงว่าง ตัวอย่าง รับอินพุต: golf โปรแกรมของคุณควรส่งออก: golf o l l o flog การป้อนข้อมูล: 123 เอาท์พุท: 123 2 2 321 การป้อนข้อมูล: a เอาท์พุท: a การป้อนข้อมูล: Hello, world! เอาท์พุท (สังเกตช่องว่างระหว่าง, และ w - ช่องว่างไม่ใช่แค่ขึ้นบรรทัดใหม่): Hello, world! e d l l l r o o , w w , o …

9
ทำให้ผู้ผลิต quine ข้อผิดพลาดช้า!
เป็นส่วนหนึ่งของคำตอบของเขาในการทำ Error Quine! , @Falko เสนออัลกอริทึมต่อไปนี้: วิธีสร้างโซลูชันของคุณเองใน 2 นาที? เปิดไฟล์ใหม่ใน IDE ที่คุณเลือก ตบหัวของคุณไปที่คีย์บอร์ดด้านหน้าคุณ รวบรวม. แทนที่รหัสด้วยข้อความแสดงข้อผิดพลาดของคอมไพเลอร์ ทำซ้ำขั้นตอนที่ 3 และ 4 จนกระทั่งรหัสบรรจบกัน ฉันเดิมพันขั้นตอนดังกล่าวยุติอย่างรวดเร็วในกรณีส่วนใหญ่! งาน งานของคุณคือการพิสูจน์ว่าเขาผิด เขียนโปรแกรมเต็มรูปแบบที่ตอบสนองต่อไปนี้: เมื่อรวบรวมหรือตีความมันสร้างข้อผิดพลาดที่เมื่อรวบรวมหรือตีความในทางกลับกันก็ส่งผลให้เกิดข้อผิดพลาด ทำซ้ำขั้นตอนที่ 1 ซ้ำแล้วซ้ำอีกในที่สุดจะพบจุดคงที่เช่นข้อผิดพลาด quine กฎเพิ่มเติม ข้อความแสดงข้อผิดพลาดสุดท้ายจะต้องมีความยาวเป็นบวก อย่างไรก็ตามข้อความแสดงข้อผิดพลาดก่อนหน้าและรหัสต้นฉบับอาจว่างเปล่า ความยาวของซอร์สโค้ดต้นฉบับต้องไม่เกิน 1024 ไบต์ รหัสต้นฉบับหรือรหัสที่สร้างในขั้นตอนใด ๆ อาจสร้างผลลัพธ์ที่ไม่ใช่ข้อผิดพลาด เอาต์พุตจะต้องระบุได้อย่างชัดเจนว่าเป็นข้อความแสดงข้อผิดพลาดซึ่งจะต้องสร้างขึ้นโดยคอมไพเลอร์ / ล่ามเนื่องจากข้อผิดพลาดทางไวยากรณ์ข้อผิดพลาดรันไทม์การอ้างอิงที่ไม่ได้กำหนด ฯลฯ โปรแกรมของคุณอาจไม่ได้รับอินพุตหรือต้องการแฟล็กใด ๆ เพื่อสร้างลูป โปรแกรมของคุณอาจขึ้นอยู่กับการใช้งานเฉพาะของภาษาหรือรุ่นของมัน เกณฑ์การให้คะแนน คะแนนของคุณคือจำนวนจำกัดของขั้นตอนซอร์สโค้ดที่คุณต้องการก่อนสร้างข้อผิดพลาด การส่งที่มีคะแนนสูงสุดจะเป็นผู้ชนะ ความยาวของซอร์สโค้ดต้นฉบับจะถูกใช้เป็นตัวแบ่งไทม์ …

3
แก้ลูกบาศก์ของรูบิค
เขียนโปรแกรมที่สั้นที่สุดที่แก้คิวบ์ของรูบิค (3 * 3 * 3) ภายในระยะเวลาที่เหมาะสมและเคลื่อนไหวได้ (พูดได้สูงสุด 5 วินาทีในเครื่องของคุณและน้อยกว่า 1,000 ครั้ง) อินพุตอยู่ในรูปแบบ: UF UR UB UL DF DR DB DL FR FL BR BL UFR URB UBL ULF DRF DFL DLB DBR (อินพุตเฉพาะนี้แสดงถึงคิวบ์ที่แก้ไขแล้ว) 12 สตริงอักขระ 2 ตัวแรกคือขอบในตำแหน่ง UF, UR, ... BL (U = ขึ้น, F = ด้านหน้า, R = …

16
กระดานหมากรุกที่เล็กที่สุดในการบีบอัด
เขียนอัลกอริทึมหรือโปรแกรมที่สามารถเข้ารหัสและถอดรหัสกระดานหมากรุก เป้าหมายคือการทำให้การเป็นตัวแทนที่เล็กที่สุดของกระดานหมากรุกที่สามารถนำมาใช้ (ถอดรหัสครั้งเดียว) เพื่อกำหนดความเป็นไปได้การเคลื่อนไหวทั้งหมดสำหรับผู้เล่นที่เปิด การเข้ารหัสจะต้องสามารถแสดง: ใครหันมาทางไหน ไม่ว่าจะเป็นผู้เล่นสามารถปราสาทในแต่ละด้าน ไม่ว่าผู้เล่นจะสามารถดำเนินการ en-passant และถ้าเป็นเช่นนั้นซึ่งเบี้ยของพวกเขา? ตำแหน่งของชิ้นงานทั้งหมด หมายเหตุสำคัญเกี่ยวกับการขว้างปา:หากขาวขยับกษัตริย์ของพวกเขาในคราวเดียวแล้วย้ายกลับไปอีกครั้งมันจะต้องชัดเจนว่าพวกเขาไม่สามารถปราสาททั้งสองข้างหลังจากนั้น ถ้าพวกเขาย้ายไปทางซ้ายหรือขวาของพวกเขาเหมือนกัน แม้ว่ากระดานจะอยู่ในสภาพเดียวกันเมื่อสองตาก่อน แต่สภาพเกมก็เปลี่ยนไป ข้อมูลเพิ่มเติมที่นี่: http://en.wikipedia.org/wiki/Chess#Castling หมายเหตุสำคัญเกี่ยวกับผู้สัญจร:นี่คือการย้ายที่ละเอียดอ่อน อ่านกฎสำหรับข้อมูลเพิ่มเติม http://en.wikipedia.org/wiki/Chess#En_passant กำหนดอินพุตและเอาต์พุตตามต้องการ อุปกรณ์ประกอบฉากสำคัญสำหรับใครก็ตามที่สามารถบีบอัดมันได้มากที่สุด! คะแนนของคุณจะถูกกำหนดสถานการณ์กรณีที่เลวร้ายที่สุด - ขนาดที่เป็นไปได้สูงสุดในบิต ตรวจสอบให้แน่ใจว่าคุณแสดงให้เห็นว่าคุณคำนวณจำนวนนั้นอย่างไรและคิดอย่างไร ยิงเพื่อใส่เคสที่แย่ที่สุด!

27
ตำรวจ: ซับสตริง OEIS ที่ซ่อนอยู่
นี่คือความท้าทาย Cops และ Robbers นี่คือกระทู้ของตำรวจ ด้ายโม่งคือที่นี่ ในฐานะตำรวจคุณต้องเลือกลำดับใด ๆ จากOEISและเขียนโปรแกรมpที่พิมพ์จำนวนเต็มแรกจากลำดับนั้น นอกจากนี้คุณยังจะต้องพบบางสตริงs หากคุณใส่sที่ไหนสักแห่งที่เข้าสู่หน้าโปรแกรมนี้จะต้องพิมพ์เลขที่สองจากลำดับ หากคุณแทรกs + sลงในตำแหน่งเดียวกันในpโปรแกรมนี้จะต้องพิมพ์จำนวนเต็มที่สามจากลำดับ s + s + sในตำแหน่งเดียวกันจะพิมพ์ที่สี่เป็นต้นไปเรื่อย ๆ นี่คือตัวอย่าง: Python 3 ลำดับA000027 print(1) สตริงซ่อนเป็นไบต์ที่สอง สตริงคือ+1เนื่องจากโปรแกรมprint(1+1)จะพิมพ์จำนวนเต็มที่สองใน A000027 โปรแกรมprint(1+1+1)จะพิมพ์จำนวนเต็มที่สามเป็นต้น ตำรวจต้องเปิดเผยลำดับโปรแกรมเดิมPและความยาวของสตริงที่ซ่อนs โจรแตกส่งโดยการหาสตริงใดขึ้นอยู่กับความยาวที่และสถานที่ที่จะแทรกเพื่อสร้างลำดับ สตริงไม่จำเป็นต้องตรงกับโซลูชันที่ต้องการให้เป็นรอยแตกที่ถูกต้องและไม่มีการใส่ตำแหน่ง กฎระเบียบ โซลูชันของคุณต้องทำงานกับหมายเลขใด ๆ ในลำดับหรืออย่างน้อยก็จนกว่าจะถึงขีด จำกัด ที่เหมาะสมซึ่งไม่สามารถทำได้กับข้อ จำกัด หน่วยความจำจำนวนเต็ม / สแต็คล้นเป็นต้น โจรผู้ชนะคือผู้ใช้ที่ถอดรหัสสิ่งที่ได้รับความนิยมมากที่สุดโดยผู้ที่เข้ามาถึงจำนวนรอยร้าวนั้นจะถึงที่ก่อน ตำรวจชนะคือตำรวจกับที่สั้นที่สุดสตริงsที่ไม่ได้แตก tiebreaker เป็นที่สั้นที่สุดพี หากไม่มีการส่งที่ไม่ได้ทำการคัดลอกตำรวจที่มีทางออกที่ไม่ได้ทำการแยกจะชนะได้นานที่สุด ในการประกาศความปลอดภัยโซลูชันของคุณจะต้องไม่ถูกถอดออกเป็นเวลา 1 สัปดาห์จากนั้นเปิดเผยสตริงที่ซ่อนอยู่ …

30
พระองค์ทรงสังหาร Jabberwock หรือไม่?
งานของคุณคือการส่งออกสตริงที่แน่นอน The Jabberwocky โดยไม่ต้องป้อนข้อมูล ใช้กฎปกติสำหรับอินพุตและเอาต์พุตดังนั้นอนุญาตให้ทั้งฟังก์ชั่นและโปรแกรม แน่นอนว่ามีการจับมันจะไม่สนุกถ้าไม่มีการจับ โปรแกรมของคุณเมื่อถอดอักขระที่ไม่ใช่ตัวอักษรต้องเริ่มต้นบทกวีJabberwocky (ไม่คำนึงถึงขนาดตัวพิมพ์) ในการเริ่มต้นบทกวีมันจะต้องเป็นสตริงย่อยอย่างต่อเนื่องของบทกวีเริ่มต้นที่จุดเริ่มต้น สตริงว่างเปล่าใช้ได้ (แม้ว่าคุณอาจทำคะแนนได้ไม่ดี) นี่คือข้อความสำหรับการอ้างอิง: twasbrilligandtheslithytovesdidgyreandgimbleinthewabeallmimsyweretheborogovesandthemomerathsoutgrabebewarethejabberwockmysonthejawsthatbitetheclawsthatcatchbewarethejubjubbirdandshunthefrumiousbandersnatchhetookhisvorpalswordinhandlongtimethemanxomefoehesoughtsorestedhebythetumtumtreeandstoodawhileinthoughtandasinuffishthoughthestoodthejabberwockwitheyesofflamecamewhifflingthroughthetulgeywoodandburbledasitcameonetwoonetwoandthroughandthroughthevorpalbladewentsnickersnackheleftitdeadandwithitsheadhewentgalumphingbackandhastthouslainthejabberwockcometomyarmsmybeamishboyofrabjousdaycalloohcallayhechortledinhisjoytwasbrilligandtheslithytovesdidgyreandgimbleinthewabeallmimsyweretheborogovesandthemomerathsoutgrabe นี่คือโปรแกรมที่คุณสามารถใช้เพื่อทดสอบคุณสมบัตินี้ หากคุณใช้บทกวีหมดคุณต้องไม่ใช้ตัวอักษรเพิ่มเติมใด ๆ ตัวอักษรเป็นตัวอักษรa- zและA- Zนี่คือรายการที่สมบูรณ์: ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz เกณฑ์การให้คะแนน โปรแกรมของคุณจะได้คะแนนในจำนวนไบต์ที่ไม่ใช่ตัวอักษรที่ใช้โดยมีค่าน้อยกว่าจะดีกว่า นี่คือโปรแกรม Haskell ที่ให้คะแนนคำตอบ (ซึ่งถือว่าอินพุตถูกต้อง) โปรแกรมตัวอย่าง โปรแกรมต่อไปนี้จะใช้ได้: twas&*brilliga77812nd Thesli thyt Oves didgy reand Gim bleinth ewab eal lmims ywe"""""""" ret h eb or o g o ve sa n …

28
เมทริกซ์ศูนย์กลางแบบสมมาตรเป็น ... และรหัสนั้นเป็นอย่างไร
defintion เมทริกซ์สมมาตรศูนย์กลางเป็นตารางเมทริกซ์ที่มีความสมมาตรเกี่ยวกับศูนย์ แม่นยำกว่าเมทริกซ์ขนาดคือ centrosymmetric ถ้าสำหรับความสัมพันธ์ต่อไปนี้เป็นที่น่าพอใจ: n × n ฉัน,AAAn × nn×nn \times nฉัน,ฉัน,j ∈ ( [ 1 , n ] ∩ Z )i,j∈([1,n]∩Z)i,\: j \in ([1, n] \cap \mathbb{Z})Aฉัน,J= An + 1 - ฉัน,n + 1 - jAi,j=An+1−i,n+1−jA_{i,\:j}=A_{n+1-i,\:n+1-j} ตัวอย่างของเมทริกซ์ดังกล่าว นี่คือภาพประกอบของสมมาตรของเมทริกซ์เช่นนี้ (ยืมมาจากบทความ Wikipedia ดังกล่าว): เมทริกซ์ศูนย์กลางแบบสมมาตรแบบยาวด้านข้าง ( ):4 × 44×44\times 4 ⎛⎝⎜⎜⎜1584267337624851⎞⎠⎟⎟⎟(1234567887654321)\left(\begin{matrix} …

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