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

ทฤษฎีจำนวนเกี่ยวข้องกับคุณสมบัติและความสัมพันธ์ของตัวเลขโดยส่วนใหญ่เป็นจำนวนเต็มบวก

20
ครึ่งนาฬิกาอยู่ตรงไหน?
ในห้องของฉันฉันมีนาฬิกาที่น่ากลัวนี้ (คลิกเพื่อดูขนาดเต็ม): สิ่งเหล่านี้ส่วนใหญ่ไม่ยากที่จะเข้าใจ แต่สำหรับ 4-นาฬิกามีเล่ห์เหลี่ยมโดยเฉพาะ: โดยปกติเศษส่วนเช่น 1/2 ไม่สมเหตุสมผลในคณิตศาสตร์เลขคณิตเนื่องจากมีเพียงจำนวนเต็มเท่านั้นที่เกี่ยวข้อง วิธีที่ถูกต้องนั้นเป็นที่เห็นนี้เป็นสิ่งที่ตรงกันข้ามของ 2, หรือจะนำมันอีกทางหนึ่งคือตัวเลขที่ที่ วางวิธีนี้คิดอยู่ครู่จะเผยให้เห็นว่าเพราะ อย่างไรก็ตามเพียงแค่ค้นหาการผกผันทวีคูณจะง่ายเกินไปที่จะท้าทาย งั้นลองชนความยากลำบากในการยกกำลังหรือพูดอีกอย่างคือหาลอการิทึมแบบแยกส่วนหรือลอการิทึมแบบแยกส่วนของ 2 ในกรณีนี้ 3 คือลอการิทึมแบบแยกส่วนของ 2 เทียบกับ 7 สำหรับ 7 ของคุณที่มีทฤษฎีจำนวน / พีชคณิตนามธรรม พื้นหลังซึ่งหมายความว่าการคำนวณคำสั่งคูณของ 2 โมดูโล n ความท้าทาย ได้รับในเชิงบวกคี่จำนวนเต็มnมากกว่า 1, เอาท์พุทจำนวนเต็มบวกที่เล็กที่สุดที่x ตัวอย่าง n x 3 2 5 4 7 3 9 6 11 10 13 12 15 …

23
ใช้กฎการหารหารด้วย 7
วิธีตรวจสอบว่าตัวเลขทศนิยมหารด้วย 7 ได้ไหม: ลบตัวเลขสุดท้าย คูณด้วย 2 และลบออกจากสิ่งที่เหลืออยู่ หากผลลัพธ์ถูกหารด้วย 7 ตัวเลขเดิมจะหารด้วย 7 (อธิบายด้วยเช่นที่นี่ ) กฎนี้ดีสำหรับการตรวจสอบหารด้วยตนเอง ตัวอย่างเช่น: 2016 หารด้วย 7 หรือไม่ ลบ6*2ออกจาก 201; เราได้ 189. นี่หารด้วย 7 ได้ไหม? เพื่อตรวจสอบลองใช้กฎอีกครั้ง ลบ9*2ออกจาก 18; เราได้ 0 ดังนั้น 2559 หารด้วย 7 ได้ ในการท้าทายนี้คุณควรใช้กฎนี้จนกว่าสถานะการหารจะชัดเจนซึ่งก็คือจำนวนไม่เกิน 70 (อย่างไรก็ตามดูรายละเอียดด้านล่าง) ทำให้ฟังก์ชั่นหรือโปรแกรมเต็มรูปแบบ อินพุต : จำนวนเต็มบวก รหัสของคุณควรรองรับอินพุตสูงสุด 32767 (สนับสนุนจำนวนเต็มความแม่นยำโดยพลการเป็นโบนัสดูด้านล่าง) เอาท์พุท : จำนวนเต็ม (อาจเป็นลบ) …

24
Combinatorics: คำนวณค่า Subfactorial
ตัวเลขsubfactorialหรือrencontres ( A000166 ) เป็นลำดับของตัวเลขที่คล้ายกับตัวเลข factorial ซึ่งแสดงใน combinatorics ของพีชคณิต โดยเฉพาะอย่างยิ่งที่subfactorial ลำดับที่n ! nให้จำนวนderangementsของชุดองค์ประกอบn Derangement เป็นการเปลี่ยนแปลงที่ไม่มีองค์ประกอบใดอยู่ในตำแหน่งเดียวกัน สามารถกำหนด subfactorial ผ่านความสัมพันธ์การเกิดซ้ำดังต่อไปนี้: !n = (n-1) (!(n-1) + !(n-2)) ในความเป็นจริงความสัมพันธ์ที่เกิดซ้ำกันนั้นมีไว้สำหรับปัจจัย แต่สำหรับ subfactorial เราเริ่มต้นจาก: !0 = 1 !1 = 0 (สำหรับแฟคทอเรียลที่เรามีแน่นอน1! = 1 ) งานของคุณคือการคำนวณ! nให้n กฎระเบียบ เช่นเดียวกับแฟคทอเรียล subfactorial นั้นเติบโตอย่างรวดเร็ว มันเป็นเรื่องปกติถ้าโปรแกรมของคุณสามารถจัดการปัจจัยการผลิตnเช่นนั้น! nสามารถแสดงโดยแบ่งตามชนิดจำนวนพื้นเมืองภาษาของคุณ อย่างไรก็ตามอัลกอริทึมของคุณจะต้องทำงานในทฤษฎีสำหรับnเอง นั่นหมายความว่าคุณอาจสันนิษฐานได้ว่าผลลัพธ์ที่สมบูรณ์และค่ากลางสามารถแสดงด้วยภาษาของคุณได้อย่างแม่นยำ โปรดทราบว่าสิ่งนี้จะไม่รวมค่าคงที่eหากเก็บหรือคำนวณด้วยความแม่นยำแน่นอน ผลลัพธ์ต้องเป็นจำนวนเต็มที่แน่นอน …

13
ค้นหารูท 10-adic cube ของ 3
ฉันชอบคิดเลข 10 adic เป็นตัวเลขที่ไปทางซ้ายไม่ จำกัด หรือโมดูโลจำนวนเต็มเป็นพลังงานที่มีขนาดใหญ่มากของ 10 สิ่งต่าง ๆ ดำเนินไปทางซ้ายและหายไป หากต้องการดูสิ่งที่ฉันหมายถึงโปรดทราบว่า...6667 * 3 = 1ในดินแดน 10 adic ตั้งแต่ "2" ที่ดำเนินการไปทางซ้ายจะไม่มีที่สิ้นสุด การเพิ่มและการคูณทำให้เข้าใจได้สำหรับตัวเลข 10 adic เนื่องจากnตัวเลขสุดท้ายของผลรวม / ผลิตภัณฑ์จะขึ้นอยู่กับnตัวเลขสุดท้ายของการสรุป / การคูณ ป.ร. ให้nไว้คุณจะต้องพิมพ์nตัวเลขสุดท้ายของราก 10-adic คิวบ์ที่ 3 คือที่xน่าx*x*x = 3พอใจ มันจบลงแล้ว: ...878683312291648481630318492665160423850087895134587 รหัสของคุณจะต้องยุติn=1000ก่อนส่ง สมมติว่าถ้าจำนวนที่คุณต้องการพิมพ์เริ่มต้นด้วยศูนย์คุณไม่จำเป็นต้องพิมพ์เลขศูนย์นำหน้าเพราะมันไม่ใช่จุดที่จะพิมพ์เลขศูนย์พิเศษ นี่คือรหัสกอล์ฟ คำตอบที่สั้นที่สุดในการชนะไบต์

22
เบอร์แทรนด์ของจำนวนเฉพาะ
เบอร์ทรานด์ของสมมุติระบุว่าสำหรับทุกจำนวนเต็มn ≥ 1มีอย่างน้อยหนึ่งที่สำคัญหน้าดังกล่าวว่าn <p ≤ 2n ในการตรวจสอบทฤษฎีบทนี้สำหรับn <4000เราไม่จำเป็นต้องตรวจสอบ 4000 ราย: กลอุบายของ Landauบอกว่าเพียงพอที่จะตรวจสอบว่า 2, 3, 5, 7, 13, 23, 43, 83, 163, 317, 631, 1259, 2503, 5003 ล้วนสำคัญ เพราะตัวเลขเหล่านี้แต่ละตัวมีค่าน้อยกว่าสองเท่าของรุ่นก่อนแต่ละช่วงเวลา{y: n <y ≤ 2n}มีตัวเลขอย่างน้อยหนึ่งในจำนวนเฉพาะเหล่านั้น ลำดับของตัวเลขนี้คือBertrand Primes (OEIS A006992)และมีการกำหนดดังนี้: a(1) = 2 a(n) = largest prime below 2a(n-1) ท้าทาย ใช้ลำดับนี้ คุณอาจจะเขียน ฟังก์ชั่นหรือโปรแกรมที่ให้บางnส่งกลับค่า(n) (0 …

12
เขียนตัวเลขเป็นส่วนต่างของพลัง Nth
ท้าทาย มีตัวเลขมากมายที่สามารถแสดงเป็นความแตกต่างของสองสแควร์สหรือความแตกต่างของสองคิวบ์หรืออาจจะเป็นพลังที่สูงกว่า เมื่อพูดถึงสแควร์สมีวิธีการเขียนตัวเลขที่หลากหลายพูดได้ 75 ว่าเป็นความแตกต่างของสแควร์ส 2 คุณสามารถเขียน: 75 = (10)^2 - (5)^2 = (14)^2 - (11)^2 = (38)^2 - (37)^2 ถ้าอย่างนั้นเรามาพูดถึงความท้าทาย ประการแรกผู้ใช้ป้อนตัวเลขจากนั้นเขาป้อนค่าสำหรับ n คุณต้องแสดงวิธีการทั้งหมดที่สามารถเขียนหมายเลขนั้นในรูปแบบของⁿ - bⁿ อินพุตและเอาต์พุต ข้อมูลที่ป้อนจะเป็นตัวเลขและค่าของ n ผลลัพธ์ของคุณจะต้องมีคู่ของ 'a' และ 'b' ทั้งหมดที่ตรงตามเงื่อนไขที่ระบุไว้ข้างต้น ตัวเลขตัวแรกในคู่ต้องมากกว่าตัวที่สอง โปรดทราบว่าA, B, n และจำนวนการป้อนข้อมูลที่เป็นจำนวนเต็มบวกทั้งหมดและ n> 1 ตัวอย่าง 50, 2 -> (none) 32, 2 -> (9,7), …

29
สามเหลี่ยมปาสคาล (Sort of)
ทุกคนที่นี่ส่วนใหญ่คุ้นเคยกับสามเหลี่ยมปาสคาล มันเกิดขึ้นจากแถวที่ต่อเนื่องกันซึ่งองค์ประกอบแต่ละอย่างนั้นคือผลรวมของเพื่อนบ้านทั้งสองด้านบนซ้ายและขวาบน นี่คือ5แถวแรก(ยืมมาจากสร้างของสามเหลี่ยมปาสคาล ): 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 . . . ยุบแถวเหล่านี้ไปทางซ้าย 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 . . . จัดเรียงตามลำดับจากน้อยไปหามาก 1 1 1 1 1 2 1 1 …

30
รับสำเนาของคุณด้วยกัน
ใน 4chan เกมยอดนิยมจะได้รับ โพสต์ทุกรายการในไซต์จะได้รับ ID โพสต์ตามลำดับ เนื่องจากคุณไม่สามารถมีอิทธิพลหรือกำหนดพวกเขาคนพยายามที่จะเดา (อย่างน้อยส่วนหนึ่ง) หมายเลขโพสต์ของตัวเองโดยปกติแล้วจะเป็นตัวเลขสองสามตัวแรก เกมอีกเวอร์ชั่นหนึ่งเรียกว่า dubs และเป้าหมายคือเพื่อให้ได้ตัวเลขที่ซ้ำกันในตอนท้ายของตัวเลข (เช่น 1234555) งานของคุณถ้าคุณต้องการที่จะยอมรับมันคือการเขียนโปรแกรมที่ใช้รหัสโพสต์เป็นอินพุต (จำนวนเต็มมาตรฐานคุณสามารถสมมติว่าต่ำกว่า 2 ^ 32) และส่งกลับจำนวนหลักซ้ำที่ส่วนท้าย กฎระเบียบ ช่องโหว่มาตรฐานจะไม่ได้รับอนุญาต โปรแกรมสามารถใช้เป็นฟังก์ชั่น, โปรแกรมเต็มรูปแบบ, คำสั่ง REPL, ใช้งานได้จริงตราบใดที่ไม่จำเป็นต้องใช้โค้ด / อาร์กิวเมนต์ภายนอกที่ไม่ได้ต่อเชื่อมเพื่อรัน อินพุตอาจมาจาก STDIN ฟังก์ชันอาร์กิวเมนต์อาร์กิวเมนต์บรรทัดคำสั่งไฟล์อะไรก็ได้ที่เหมาะกับคุณ กรณีทดสอบ Input: 14892093 Output: 1 Input: 12344444 Output: 5 Input: 112311 Output: 2 Input: 888888 Output: 6 Input: …

6
การต่อข้อมูลทศนิยมของสี่เหลี่ยม
หลักฐาน คืนหนึ่งฉันแค่ใคร่ครวญเรื่องตัวเลข ฉันค้นพบเกี่ยวกับสิ่งที่ไม่เหมือนใครเกี่ยวกับตัวเลขเช่น 7, 10, 12, 13 และอื่น ๆ พวกมันเป็นสี่เหลี่ยมกำลังสอง! ความหมายที่ว่าเมื่อยกกำลังสองจะประกอบด้วยกำลังสองของตัวเอง OEIS เรียกพวกมันว่า Squares ซึ่งเป็นการแบ่งส่วนทศนิยมของ Squares สองตัวขึ้นไป ตัวอย่างของตัวเลขดังกล่าว ได้แก่ 7 (49 มี 2 2และ 3 2 ) 13 (169 มี 4 2และ 3 2 ) และ 20 (400 มี 2 2และ 0 2 ) ตัวอย่างอื่น ๆ ได้แก่ 37 เนื่องจาก 1369 …

9
พิมพ์สี่เหลี่ยมที่แข็งแรงทั้งหมด 3 คูณ 3
ตารางที่มีความทนทาน (คล้ายกับตารางมายากล ) คือการจัดเรียงของจำนวนเต็ม 1 ถึง N 2บนกริด N โดย N ดังนั้นทุก 2 โดย 2 subgrid จะมีผลรวมเท่ากัน ตัวอย่างเช่นสำหรับ N = 3 หนึ่งตารางที่มีความทนทานคือ 1 5 3 9 8 7 4 2 6 เพราะทั้งสองรุ่นย่อย 4 คูณ 2 1 5 9 8 5 3 8 7 9 8 4 2 8 7 2 …
24 code-golf  number  arithmetic  number-theory  grid  code-golf  binary  code-golf  popularity-contest  code-golf  chemistry  code-golf  code-golf  date  code-golf  quine  chess  code-golf  hexadecimal  code-golf  number  arithmetic  sequence  array-manipulation  code-golf  math  date  code-golf  typography  code-golf  string  code-golf  string  code-golf  code-golf  math  arithmetic  array-manipulation  grid  code-golf  puzzle-solver  code-golf  music  audio  code-golf  decision-problem  code-golf  geometry  code-golf  number  bitwise  code-golf  string  metagolf  hexagonal-grid  code-golf  string  code-golf  sorting  popularity-contest  code-golf  game  sequence  base-conversion  binary  code-golf  decision-problem  graph-theory  natural-language  code-golf  math  parsing  optimized-output  code-golf  array-manipulation  code-golf  graphical-output  image-processing  tiling  code-golf  graph-theory  path-finding  chess  code-golf  code-golf  balanced-string  code-golf  number  code-golf  sequence  code-golf  math  arithmetic  statistics  code-golf  chemistry 

10
ทฤษฎีบทจำนวนเหลี่ยมของแฟร์มาต์
ทฤษฎีบทจำนวนเหลี่ยมของแฟร์มาต์ระบุว่าจำนวนเต็มบวกทุกค่าสามารถแสดงเป็นผลรวมของจำนวนตัวเลขnnn nnnซึ่งหมายความว่าทุกจำนวนเต็มบวกสามารถแสดงเป็นผลรวมของตัวเลขสามเหลี่ยมได้มากถึงสามรูปสามเหลี่ยม, สี่ตาราง, ห้าเหลี่ยมห้าเหลี่ยมเป็นต้นงานของคุณคือการใช้จำนวนเต็มบวกxxx , และจำนวนเต็มs≥3s≥3s \ge 3และส่งออกsss -gonalจำนวนเต็มซึ่งรวมไปxxxx nnn -th sss -gonal จำนวนเต็มที่n≥1n≥1n \ge 1และs≥3s≥3s \ge 3 , สามารถกำหนดในสองวิธี วิธีที่ไม่ใช่คณิตศาสตร์-Y เป็นที่nnn TH sssจำนวน -gonal สามารถสร้างเป็นรูปเหลี่ยมปกติกับsssด้านข้างแต่ละความยาวnnnnตัวอย่างเช่นสำหรับs=3s=3s = 3 (ตัวเลขสามเหลี่ยม): ดูที่นี่สำหรับตัวอย่างที่มีขนาดใหญ่ssss นิยามคณิตศาสตร์ -y คือการใช้สูตรสำหรับP(n,s)P(n,s)P(n, s)ซึ่งให้ผลเป็นจำนวนnnn -th sss -gonal: P(n,s)=n2(s−2)−n(s−4)2P(n,s)=n2(s−2)−n(s−4)2P(n, s) = \frac{n^2(s-2) - n(s-4)}{2} ซึ่งจะได้รับในหน้าวิกิพีเดียที่นี่ อินพุต สองจำนวนเต็มบวกsssและxxxกับสภาพs≥3s≥3s \ge 3 3 คุณสามารถป้อนจำนวนเต็มเหล่านี้ในรูปแบบที่เป็นธรรมชาติมากที่สุดในภาษาของคุณ …

12
Divinacci Sequence
Divinacci ( OEIS ) ดำเนินการลำดับฟีโบนักชี แต่แทนที่จะใช้: f(n) = f(n-1)+f(n-2) ใช้: f(n) = sum(divisors(f(n-1))) + sum(divisors(f(n-2))) สำหรับอินพุทของnเอาท์พุทคำที่ n โปรแกรมของคุณควรมีเพียง 1 อินพุท 14 คำแรก (0 ดัชนีคุณอาจ 1 ดัชนี; สถานะที่คุณใช้): 0 | 0 # Initial | [] 1 | 1 # Initial | [1] => 1 2 | 1 # [] + [1] …

14
ใช้รหัสของคุณซ้ำ!
ในการท้าทายนี้เราพยายามที่จะแก้ปัญหาที่สำคัญสองอย่างพร้อมกัน พวกเขาเป็น: รับจำนวนเต็มaและb , บอกว่าa -1 เป็นจำนวนเฉพาะ รับจำนวนเต็มaและbส่งคืนnCr (a, b) คุณต้องเขียนโปรแกรมสองโปรแกรมหนึ่งที่ทำงานแรกและอีกอันหนึ่งทำงาน เนื่องจากเราต้องการแก้ไขปัญหาทั้งสองพร้อมกันจึงขอแนะนำให้ใช้โค้ดชิ้นเดียวกันในโปรแกรมทั้งสอง เกณฑ์การให้คะแนน คะแนนคำตอบคือระยะทางของ Levenshtein ระหว่างสองโปรแกรม คะแนนต่ำกว่าดีกว่า ในกรณีที่เสมอกันคำตอบด้วยรหัสที่สั้นที่สุดของทั้งสองโปรแกรมจะชนะ คุณสามารถใช้สคริปต์นี้เพื่อคำนวณคะแนนการแก้ปัญหาของคุณ กฎระเบียบ คุณต้องเขียนโปรแกรมสองโปรแกรมในภาษาเดียวกันกับที่แก้งานที่อธิบายไว้ข้างต้น คุณสามารถใช้วิธีการ I / O ใด ๆ ที่คุณต้องการ สำหรับภารกิจที่ 1 คุณสามารถส่งกลับค่าความจริง / เท็จหรือเลือกสองค่าเพื่อหมายถึงความจริงและเท็จและคืนค่าเหล่านั้นตามลำดับ เช่น. คุณสามารถเลือกได้ว่า"prime"หมายถึงจริงและ"not prime"หมายถึงเท็จ อัลกอริทึมที่คุณใช้จะต้องใช้งานได้กับอินพุตที่เป็นไปได้ทั้งหมด แต่ก็โอเคถ้ารหัสล้มเหลวสำหรับจำนวนมากเนื่องจากข้อ จำกัด ของประเภทหมายเลขที่ใช้ คุณสามารถสันนิษฐานได้ว่าอินพุตนั้นถูกต้อง ไม่มีส่วนย่อยของโปรแกรมที่จะต้องแก้ปัญหาคือ รหัสจะต้องไม่ทำงานหากมีการลบอักขระใด ๆ ออก ตัวอย่างเช่นรหัสต่อไปนี้ไม่ถูกต้องเนื่องจากเป็นไปได้ที่จะลบบล็อกอื่นที่ไม่ได้ใช้โดยไม่ทำให้โปรแกรมแตก: if (1) { /* …

6
ตัวประกอบบางส่วนของจำนวนเต็มบวก
คอลเลกชันของจำนวนเต็มบวกd_1 d_2 ... d_kคือการแยกตัวประกอบของจำนวนเต็มบวกnถ้า d_1 * d_2 * ... * d_k = n เลขจำนวนเต็มบวกแต่ละตัวมีการแยกตัวประกอบเฉพาะที่สำคัญแต่โดยทั่วไปแล้วพวกมันยังมีตัวประกอบที่ซึ่งคำบางคำประกอบกัน เช่น 12 = 6 * 2 = 4 * 3 = 3 * 2 * 2 เขียนโปรแกรมฟังก์ชั่นคำกริยาหรือสิ่งที่คล้ายกันซึ่งรับอินพุตเป็นจำนวนเต็มบวกเดียวและส่งคืนหรือพิมพ์รายการทั้งหมดของตัวประกอบที่แตกต่างกัน ตัวประกอบอาจถูกสร้างขึ้นในลำดับใด ๆ และเงื่อนไขอาจอยู่ในลำดับใดก็ได้ แต่ไม่ควรมีการเรียงสับเปลี่ยนกัน Factorisations อาจยังไม่รวม1กับสองข้อยกเว้น: สำหรับการป้อนข้อมูลnที่คุณอาจจะให้ factorisation n*1แทนn; และสำหรับการป้อนข้อมูล1คุณอาจให้การแยกตัวประกอบ1แทนรายการว่างเปล่า คุณอาจคิดว่าอินพุตจะอยู่ในช่วงของจำนวนเต็ม 32- บิตที่ลงชื่อแล้ว ถ้าผลการเป็นสตริงควรจะมีความแตกต่างที่ชัดเจนระหว่างการปักปันเขตของตัวเลขภายใน factorisation และการปักปันเขตของ factorisations ที่ แต่ก็ไม่จำเป็น …

10
ตัวเลขคอมโพสิตสูง
จำนวนคอมโพสิตสูงเป็นจำนวนเต็มบวกที่มีตัวหารมากกว่าจำนวนเต็มบวกที่มีขนาดเล็กมี นี่คือOEIS ลำดับ A002182 20 คำแรกคือ 1, 2, 4, 6, 12, 24, 36, 48, 60, 120, 180, 240, 360, 720, 840, 1260, 1680, 2520, 5040, 7560 ตัวอย่างเช่น4อยู่ในลำดับเนื่องจากมีตัวหาร 3 ตัว (คือ 1, 2, 4) ในขณะที่ 3 มีเพียง 2 ตัวหารเท่านั้น, 2 ยังมีตัวหาร 2 และ 1 มีตัวหาร 1 ตัว ท้าทาย กำหนดอินพุตจำนวนเต็มบวกnให้เอาต์พุตทั้งตัวเลขคอมโพสิตสูงn -th หรือตัวเลขคอมโพสิตสูงnอันดับแรกตามที่คุณเลือก …

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