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

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

30
รับตัวเลขสุ่ม n ตัวเลขด้วยตัวเลขที่แตกต่างกันและไม่ใช่ 0
ฉันอ่านคำถามนี้และคิดว่ามันจะเป็นการท้าทายที่ดี งาน ให้อินพุต0<n<10สร้างตัวเลขสุ่มด้วย ตัวเลขที่แน่นอน ครั้งแรกไม่ได้ 0 ดังนั้น f(n)>10**(n-1)-1 ตัวเลขที่แตกต่างกัน เกณฑ์การชนะ นี่คือรหัส - กอล์ฟเพื่อให้ได้รหัสที่สั้นที่สุด สุ่ม ฉันหมายถึงการกระจายแบบสุ่มอย่างสม่ำเสมอ ดังนั้นจากมุมมองของโปรแกรมแต่ละหมายเลขที่เป็นไปได้มีโอกาสเดียวกัน หากภาษาที่คุณกำลังเขียนมีตัวสร้างตัวเลขสุ่มแปลก ๆ ก็ไม่เป็นไรที่จะใช้มัน ตัวอย่าง รายการค่าที่จะเลือกแบบสุ่มสำหรับn=2คือ: [10, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 34, 35, 36, 37, 38, 39, 40, 41, …
22 code-golf  number  random  grid  game  king-of-the-hill  javascript  code-golf  arithmetic  statistics  code-golf  math  code-golf  math  code-golf  string  palindrome  code-golf  string  interactive  code-golf  quine  polyglot  code-golf  string  stack-exchange-api  code-golf  number-theory  decision-problem  code-golf  tips  code-golf  string  internet  code-golf  graphical-output  image-processing  fractal  code-golf  ascii-art  geometry  hexagonal-grid  code-golf  string  restricted-source  hello-world  code-golf  game  code-golf  cipher  code-golf  permutations  cops-and-robbers  permutations  cops-and-robbers  code-golf  internet  stack-exchange-api  code-golf  ascii-art  random  code-golf  tips  code-golf  ascii-art  code-golf  code-golf  kolmogorov-complexity  code-golf  string  unicode  code-golf  number  sequence  primes  palindrome  code-golf  game  decision-problem  code-golf  math  geometry  code-golf  graphical-output  interactive  code-golf  set-partitions  code-golf  number  arithmetic  restricted-source  code-golf  decision-problem  python  recursion  code-golf  ascii-art  code-golf  source-layout  code-golf  function  recursion  functional-programming  code-golf  game  combinatorics  permutations  code-golf  string  file-system  code-golf  string  hashing  code-golf  stack-exchange-api  code-golf  string  code-golf  math  number  arithmetic  polyglot 

15
คำนวณพาร์ติชันของ N
ความท้าทายของคุณเป็นเรื่องง่าย: รับจำนวนเต็มN , ouput รายการของจำนวนเต็มบวกทุกคนที่จำนวนเงินที่จะไม่มี ตัวอย่างเช่นถ้าอินพุตเป็น 5 คุณควรส่งออก [1, 1, 1, 1, 1] [1, 1, 1, 2] [1, 1, 3] [1, 2, 2] [1, 4] [2, 3] [5] รายการเหล่านี้ไม่จำเป็นต้องส่งออกตามลำดับใด ๆ หรือตัวเลขภายในแต่ละรายการ ตัวอย่างเช่นนี่จะเป็นผลลัพธ์ที่ยอมรับได้สำหรับ '5': [1, 1, 1, 2] [5] [3, 1, 1] [2, 1, 2] [4, 1] [1, 1, 1, 1, …

20
ย้อนกลับและลบ
คำอธิบายการท้าทาย ลองใช้จำนวนเต็มบวกnกลับตัวเลขเพื่อรับrev(n)และรับค่าสัมบูรณ์ของผลต่างของตัวเลขสองตัวนี้: |n - rev(n)|(หรือabs(n - rev(n))) ตัวอย่าง: n = 5067 rev(n) = 7605 |n - rev(n)| = |5067 - 7605| = |-2538| = 2538 หลังจากทำซ้ำการดำเนินการนี้หลายครั้งเพียงพอตัวเลขส่วนใหญ่จะกลายเป็น0(ดังนั้นการยกเลิกการวนซ้ำ) ... 5067 -> 2538 -> 5814 -> 1629 -> 7632 -> 5265 -> 360 -> 297 -> 495 -> 99 -> 0 ... แม้ว่าตัวเลข …

9
พิมพ์ตัวเลข Super Collatz
Collatz ลำดับ (ที่เรียกว่าปัญหา 3x + 1) เป็นที่ที่คุณเริ่มต้นด้วยจำนวนเต็มบวกใด ๆ สำหรับตัวอย่างนี้เราจะใช้ 10 และใช้ชุดของขั้นตอนไปนี้: if n is even: Divide it by 2 if n is odd: Multiply it by 3 and add 1 repeat until n = 1 10 คือเลขดังนั้นเราหารด้วย 2 เพื่อให้ได้ 5 5 จึงแปลกเราจึงคูณด้วย 3 และเพิ่ม 1 เพื่อได้ 16 16 เท่ากับดังนั้นตัดครึ่งให้ได้ 8 …

22
qa กำลังสองตกค้างของ n หรือไม่
ได้รับสองปัจจัยการผลิตq nการตรวจสอบว่าเป็นสารตกค้างกำลังสองของqn นั่นคือจะมีxที่ไหนx**2 == q (mod n)หรือเป็นqตัวดัดแปลงสแควร์n? อินพุต สองจำนวนเต็มqและnที่qและเป็นจำนวนเต็มใดn ๆ0 <= q < n เอาท์พุต ความจริงหรือเท็จ เลือกพิมพ์ใด ๆ (หรือทั้งหมด) xนั่นคือx**2 == q (mod n) ตัวอย่าง >>> quadratic_residue(1, 5) True >>> quadratic_residue(3, 8) False >>> quadratic_residue(15, 22) True กฎระเบียบ รหัสของคุณจะต้องเป็นโปรแกรมหรือฟังก์ชั่น อินพุตสามารถอยู่ในลำดับใดก็ได้ นี่คือรหัสกอล์ฟดังนั้นรหัสที่สั้นที่สุดในหน่วยไบต์ชนะ หากมีสิ่งใดไม่ชัดเจนหรือต้องการแก้ไขโปรดแจ้งให้เราทราบ โบนัส โบนัส 2 ไบต์หากฟังก์ชันของคุณยอมรับqว่าเป็นจำนวนเต็มใดก็ได้ แค็ตตาล็อก var QUESTION_ID=65329;var ANSWER_FILTER="!t)IWYnsLAZle2tQ3KqrVveCRJfxcRLe";var …

2
แถวของตัวเลขธรรมชาติ
คำนิยาม มีจำนวนอนันต์ของจำนวนธรรมชาติที่ต่อกัน (จำนวนเต็มบวกเริ่มต้นด้วย 1): 1234567891011121314151617181920212223... ท้าทาย เขียนโปรแกรมในภาษาใด ๆ ที่ยอมรับหมายเลขตำแหน่งเป็นอินพุตและเอาต์พุตหลักจากตำแหน่งนั้นในแถวที่กำหนดไว้ด้านบน หมายเลขตำแหน่งคือจำนวนเต็มบวกขนาดโดยพลการ นั่นคือตำแหน่งแรกคือ 1 ให้ผลลัพธ์เอาต์พุตหลัก '1' อินพุตเป็นทศนิยม (เช่น 13498573249827349823740000191) หรือสัญลักษณ์อิเล็กทรอนิกส์ (เช่น 1.2e789) ที่สอดคล้องกับจำนวนเต็มบวก โปรแกรมต้องสิ้นสุดในเวลาที่เหมาะสม (10 วินาทีสำหรับพีซี / Mac สมัยใหม่) ให้ดัชนีที่มีขนาดใหญ่มากเป็นอินพุต (เช่น 1e123456 - นั่นคือ 1 ที่มี 123456 ศูนย์) ดังนั้นการวนซ้ำแบบง่ายจึงไม่เป็นที่ยอมรับ โปรแกรมจะต้องยุติด้วยข้อผิดพลาดใน 1 วินาทีหากได้รับการป้อนข้อมูลที่ไม่ถูกต้องใด ๆ เช่น. 1.23e (ไม่ถูกต้อง) หรือ 1.23e1 (เท่ากับ 12.3 - ไม่ใช่จำนวนเต็ม) …

3
แฟคตอริ่งจำนวนเต็ม 64 บิต
เขียนโปรแกรมการประกอบGOLFที่อ่านจำนวนเต็มจาก stdin (ตามด้วยการขึ้นบรรทัดใหม่) และแสดงผลลัพธ์ปัจจัยหลักแยกจากบรรทัดใหม่ตามด้วยบรรทัดใหม่ต่อท้ายที่ stdout ปัจจัยสำคัญไม่จำเป็นต้องอยู่ในลำดับที่เฉพาะเจาะจง 1ไม่ใช่ปัจจัยสำคัญ GOLFไบนารี่ของคุณ(หลังจากประกอบ) จะต้องมีขนาด 8192 ไบต์ โปรแกรมของคุณจะได้คะแนนจากการรัน 10 ครั้งแต่ละรายการมีหนึ่งในอินพุตต่อไปนี้: 8831269065180497 2843901546547359024 6111061272747645669 11554045868611683619 6764921230558061729 16870180535862877896 3778974635503891117 204667546124958269 16927447722109721827 9929766466606501253 ตัวเลขเหล่านี้จะถูกจัดเรียงในแง่ของความยากลำบาก คนแรกควรได้รับการแก้ไขโดยแผนกทดลอง การปรับให้เหมาะสมกับชุดของตัวเลขนี้ขัดต่อจิตวิญญาณของคำถามฉันอาจเปลี่ยนชุดตัวเลขได้ทุกเมื่อ โปรแกรมของคุณจะต้องใช้งานได้กับหมายเลขอินพุต 64 บิตที่เป็นบวกใด ๆ คะแนนของคุณคือผลรวมของรอบ CPU ที่ใช้เพื่อคำนึงถึงตัวเลขข้างต้น เนื่องจากGOLFเป็นของใหม่ฉันจะใส่พอยน์เตอร์ไว้ที่นี่ คุณควรอ่านGOLFสเปคที่มีคำแนะนำและค่าใช้จ่ายวงจร ในโปรแกรมตัวอย่างที่เก็บ Github สามารถพบได้ โดยเฉพาะอย่างยิ่งดูที่โปรแกรมตัวอย่างแบบแฟคทอเรียลซึ่งแสดงให้เห็นถึงอินพุต / เอาต์พุต python3 assemble.py your_source.golfรวบรวมโปรแกรมของคุณเพื่อไบนารีโดยการเรียกใช้ จากนั้นเรียกใช้โปรแกรมของคุณโดยpython3 golf.py your_source.binควรพิมพ์จำนวนรอบด้วย ดูค่าของเนื้อหาการลงทะเบียนที่โปรแกรมออกด้วยการ-dตั้งค่าสถานะ - …

12
ตัวเลขที่ไม่ใช่ศูนย์ล่าสุดของแฟคทอเรียลในฐาน
คุณควรจะเขียนโปรแกรมหรือฟังก์ชั่นที่ได้รับสามจำนวนเต็มบวกn b kเป็นผลการป้อนข้อมูลหรือผลตอบแทนที่ผ่านมาkตัวเลขก่อนที่ศูนย์ต่อท้ายในฐานตัวแทนของbn! ตัวอย่าง n=7 b=5 k=4 factorial(n) is 5040 5040 is 130130 in base 5 the last 4 digits of 130130 before the trailing zeros are 3013 the output is 3013 อินพุต 3 จำนวนเต็มบวกที่n b k2 <= b <= 10 ลำดับของจำนวนเต็มอินพุทสามารถเลือกได้เอง เอาท์พุต รายการของตัวเลขที่ส่งคืนหรือส่งออกเป็นรายการจำนวนเต็มหรือจำนวนเต็ม เลขศูนย์นำหน้าเป็นตัวเลือก โซลูชันของคุณต้องแก้กรณีทดสอบตัวอย่างใด ๆในคอมพิวเตอร์ของฉัน (ฉันจะทดสอบเฉพาะกรณีที่ปิดฉันมีพีซีที่ต่ำกว่าค่าเฉลี่ย) ตัวอย่าง เพิ่มการทดสอบใหม่เพื่อตรวจสอบความถูกต้องของการส่ง …

19
สร้างหมายเลขนำโชค
เรื่อง: ลูซี่ถามจอร์จว่าหมายเลขนำโชคของเขาคืออะไร หลังจากใคร่ครวญจอร์จตอบว่าเขามีเลขนำโชคหลายตัว หลังจากเกิดความสับสนnเล็กน้อยลูซี่ถามจอร์จว่าหมายเลขนำโชคแรกของเขาคืออะไร จอร์จจึงขอให้คุณเพื่อนของเขาเขียนโปรแกรมเพื่อทำงานให้เขา ความท้าทาย: คุณจะเขียนโปรแกรม / ฟังก์ชั่นที่จะได้รับจากการโต้แย้งอินพุต / nฟังก์ชั่นมาตรฐานสตริงหรือจำนวนเต็ม โปรแกรม / ฟังก์ชั่นจะส่งกลับ / ส่งออกn Lucky Numbersแรก หมายเลขนำโชคถูกกำหนดผ่านตะแกรงดังนี้ เริ่มต้นด้วยจำนวนเต็มบวก: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, ... ตอนนี้ลบทุกหมายเลขที่สอง: 1, 3, …

28
ตัวเลขที่ไม่ใช่ศูนย์สุดท้ายของ n!
รับจำนวนเต็ม1 ≤ N ≤ 1,000,000เป็นอินพุตเอาต์พุตหลักที่ไม่ใช่ศูนย์สุดท้ายของN! ที่ไหน! เป็นแฟคทอเรียล (ผลิตภัณฑ์ของตัวเลขทั้งหมดตั้งแต่1ถึงNรวมถึง) นี่คือ OEIS ลำดับA008904 โปรแกรมของคุณต้องการเสร็จสิ้นภายใน 10 วินาทีบนเครื่องที่เหมาะสมสำหรับการป้อนข้อมูลที่ถูกต้องใด ๆ กรณีทดสอบ 1 => 1 2 => 2 3 => 6 4 => 4 5 => 2 6 => 2 7 => 4 8 => 2 9 => 8 10 => 8 100 => 4 1000 …

5
ตัวเลขที่สอดคล้องกัน
คำนิยาม: สามเหลี่ยมนั้นถือเป็นสามเหลี่ยมมุมฉากหากมุมภายในมุมใดมุมหนึ่ง 90 องศา จำนวนนั้นถือว่ามีเหตุผลถ้ามันสามารถแสดงโดยอัตราส่วนของจำนวนเต็มเช่นp/qที่ทั้งสองpและqเป็นจำนวนเต็ม ตัวเลขnเป็นตัวเลขที่สอดคล้องกันหากมีพื้นที่สามเหลี่ยมมุมฉากอยู่nซึ่งทั้งสามด้านมีเหตุผล นี่คือ OEIS A003273 ท้าทาย นี่คือความท้าทายการตัดสินใจปัญหา ให้หมายเลขอินxพุทเอาท์พุทค่าที่ชัดเจนและสอดคล้องกันหากxเป็นจำนวนที่สมภาคกันและค่าที่แตกต่างและที่สอดคล้องกันแยกกันหากxไม่ใช่จำนวนที่สอดคล้องกัน ค่าเอาต์พุตไม่จำเป็นต้องเป็นความจริง / เท็จในภาษาของคุณ กฎพิเศษ สำหรับความท้าทายนี้คุณสามารถสันนิษฐานได้ว่าการคาดคะเนของเบิร์ชและสวินเนอร์ตัน - ไดเออร์เป็นเรื่องจริง หรือถ้าคุณสามารถพิสูจน์การคาดคะเนของเบิร์ชและสวินเนอร์ตัน - ไดเออร์ไปรับรางวัล 1,000,000 เหรียญสหรัฐ ;-) ตัวอย่าง (ใช้Trueสำหรับตัวเลขที่สอดคล้องกันและFalseอื่น ๆ ) 5 True 6 True 108 False กฎและคำชี้แจง เข้าและส่งออกจะได้รับโดยวิธีการที่สะดวกใด ๆ คุณสามารถพิมพ์ผลลัพธ์ไปที่ STDOUT หรือส่งคืนเป็นผลลัพธ์ของฟังก์ชัน โปรดระบุในการส่งของคุณว่าค่าที่ใช้สามารถส่งออก ยอมรับได้ทั้งโปรแกรมหรือฟังก์ชั่น ช่องโหว่มาตรฐานเป็นสิ่งต้องห้าม นี่คือรหัส - กอล์ฟเพื่อให้ใช้กฎการเล่นกอล์ฟตามปกติทั้งหมดและรหัสที่สั้นที่สุด (เป็นไบต์) ชนะ

16
การทำซ้ำ Collatz
การคาดคะเน Collatzตั้งสมมติฐานว่าหากคุณใช้จำนวนเต็มบวกใด ๆ ให้ทำซ้ำอัลกอริทึมต่อไปนี้ในเวลาที่เพียงพอ: if number is odd, then multiply by three and add one if number is even, then divide by two คุณจะได้อันดับที่ 1 ในที่สุดดูเหมือนว่าจะใช้ได้เสมอ แต่ก็ไม่เคยได้รับการพิสูจน์ว่าใช้งานได้ คุณตีกอล์ฟแล้วคำนวณว่าต้องใช้เวลานานเท่าไหร่จึงจะถึง 1ดังนั้นฉันคิดว่าฉันจะสลับบางอย่างได้ เริ่มต้นด้วยจำนวนเต็มบวกที่กำหนดคำนวณระยะเวลาที่จะได้รับ 1 ("เวลาหยุด") แล้วพบว่าเวลาหยุดจำนวนของ ทำซ้ำจนกว่าจะถึง 1 หรือจนกว่าคุณจะถึงขีด จำกัด โดยสิ้นเชิง 100 การทำซ้ำ ในกรณีก่อนหน้าให้พิมพ์จำนวนการวนซ้ำ ในกรณีหลังพิมพ์ "ล้มเหลว" หรือบางส่วนเอาท์พุทที่สอดคล้องอื่น ๆ 1≤n≤100ของทางเลือกของคุณตราบใดที่มันไม่ได้เป็นจำนวนเต็ม คุณไม่สามารถส่งออกสตริงว่างเปล่าสำหรับตัวเลือกนี้ อย่างไรก็ตามอนุญาตให้แสดงจำนวนเต็มนอกช่วง [1, 100] …

21
กำหนดความสุดยอด
จำนวนล้นเหลือเป็นจำนวนเต็มnว่าชุดใหม่ที่ถูกผูกไว้บนสำหรับอัตราส่วนกับฟังก์ชั่นตัวหารผลรวม σ กล่าวอีกนัยหนึ่งnคือเหลือเฟือหากว่าสำหรับจำนวนเต็มบวกทั้งหมดxที่น้อยกว่าn : σ(n)n>σ(x)xσ(n)n>σ(x)x\frac{\sigma(n)}n>\frac{\sigma(x)}x สำหรับค่าบางอย่าง: n σ(n) σ(n)/n superabundant 1 1 1.0000 yes 2 3 1.5000 yes 3 4 1.3333 no 4 7 1.7500 yes 5 6 1.2000 no 6 12 2.0000 yes 7 8 1.1429 no 8 15 1.8750 no 9 13 1.4444 no รายการยาวของเหล่านี้ (สำหรับกรณีทดสอบ) สามารถพบได้ที่OEIS A004394 …

16
อีกหนึ่งโปรแกรมแล้วฉันก็ออกไป!
กำหนดจำนวนเต็มบวกระดับการซ้อนnและสตริงsของตัวอักขระ ASCII ( เพื่อ~ออกโปรแกรมซึ่งเมื่อทำงานในภาษาเดียวกัน outputs โปรแกรมที่เอาท์พุทโปรแกรมที่... sที่เอาท์พุทสตริง รวมnโปรแกรมควรจะสร้างขึ้นซึ่งทั้งหมดควรจะทำงานในภาษาเดียวกันกับคำตอบของคุณ หมายเหตุ: คุณสามารถส่งออกโปรแกรมหรือฟังก์ชั่น - สิ่งที่คุณได้รับอนุญาตโดยค่าเริ่มต้นเป็นการส่ง คุณสามารถป้อนsด้วยอักขระที่หลบหนีวิธีที่โปรแกรมหรือฟังก์ชั่นในภาษาของคุณมักจะใส่สตริง ตัวอย่าง ตัวอย่างเช่นที่กำหนดn=1และs="recursion"โปรแกรม Python 2 อาจส่งออก: print "recursion" การรันสิ่งนี้จะได้ผลลัพธ์: recursion ได้รับn=2และ s = "PPCG" โปรแกรม Python 2 อาจส่งออก: print "print \"PPCG\" " การรันเอาต์พุตนี้: print "PPCG" การรันเอาต์พุตนี้: PPCG ที่เกี่ยวข้อง (+ ชื่อเรื่องแรงบันดาลใจ): อีกหนึ่ง LUL และฉันไม่อยู่ ที่เกี่ยวข้องด้วย (ใน sandbox - ตอนนี้ถูกลบ …
21 code-golf  recursion  code-golf  kolmogorov-complexity  board-game  code-golf  number-theory  polynomials  code-golf  code-golf  array-manipulation  polyglot  alphabet  answer-chaining  code-golf  sequence  math  atomic-code-golf  abstract-algebra  proof-golf  code-golf  internet  code-golf  internet  code-golf  ascii-art  kolmogorov-complexity  code-golf  math  ascii-art  number  integer  code-golf  decision-problem  binary-matrix  code-golf  number  sequence  number-theory  code-golf  math  decision-problem  matrix  abstract-algebra  code-golf  string  keyboard  code-golf  fractal  code-golf  math  sequence  combinatorics  hello-world  vim  code-golf  sequence  code-golf  graphical-output  image-processing  code-golf  decision-problem  matrix  linear-algebra  code-golf  ascii-art  code-golf  math  code-golf  ascii-art  graphical-output  code-golf  string  code-golf  string  substitution  code-golf  string  ascii-art  code-golf  arithmetic  code-golf  number  array-manipulation  decision-problem  code-golf  kolmogorov-complexity  code-generation  fractal  code-golf  ascii-art  kolmogorov-complexity  code-golf  ascii-art  code-golf  string  array-manipulation  code-golf  music  code-golf  array-manipulation  code-golf  internet  stack-exchange-api  math  fastest-algorithm  code-golf  binary  bitwise  code-golf  date  code-golf  string  code-golf  sequence  integer  code-golf  arithmetic  number-theory  code-golf  string  random 

19
สามเหลี่ยมสลับของ Pascal
รูปสามเหลี่ยมของปาสคาลนั้นสร้างขึ้นโดยเริ่มจาก1และทำให้แต่ละแถวเกิดขึ้นจากการต่อเนื่องกัน ตรงนี้แทนเราจะสร้างสามเหลี่ยมโดยสลับการคูณและการบวก เราเริ่มต้นแถวมีเพียงโดดเดี่ยว1 1หลังจากนั้นจะทำการเพิ่มในแถวคี่และการคูณจะทำบนแถวคู่ (ทำดัชนี 1 ครั้ง) เมื่อดำเนินการตามขั้นตอนเพิ่มเติมให้ถือว่าช่องว่างด้านนอกของรูปสามเหลี่ยมเต็มไปด้วย0s เมื่อดำเนินการขั้นตอนการคูณให้ถือว่าด้านนอกเต็มไปด้วย1s นี่คือสามเหลี่ยมเต็มรูปแบบลงไป 7 แถว *หรือ+ในรายการที่ยังเหลือขั้นตอนสิ่งที่ได้ดำเนินการในการสร้างแถวนั้น 1 1 2 * 1 1 3 + 1 2 1 4 * 1 2 2 1 5 + 1 3 4 3 1 6 * 1 3 12 12 3 1 7 + 1 4 15 …

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