Questions tagged «number-theory»

数论涉及数的性质和关系,主要是正整数。

14
总和链序列
顺序: 我们从开始1。 我们首先将当前的1索引值添加到序列中的前一个数字。 然后,如果它们适用于此当前值,则按顺序应用以下数学运算: 可除以2?=>加法 可除以3?=>减法 可除以4?=>(加和)相乘 不是没有除尽2,3也没有4?->继续当前的总和结果 输出: 按以下顺序输出前100个数字: 1, 1, 21, 25, 30, 216, 223, 223, 2169, 2179, 2190, 2202, 2215, 2215, 2245, 2261, 2295, 2295, 2333, 2353, 2395, 2417, 56649, 56649, 56699, 56725, 1533033, 1533061, 1533090, 45993600, 45993631, 45993631, 1517792001, 1517792035, 1517792070, 1517792106, 1517792143, 1517792143, 1517792221, 1517792261, …

18
数字多样性
正整数可以以整数为底表示1 <= b < inf。 转换为该基数时,它具有一些不同的数字。 基数中的任何正整数都1具有1不同的数字。 base中大多数正整数2都有2不同的数字,2^n - 1只有形式为的例外1。 因此,可以用1唯一数字表示的整数基中的第一个正整数是1,可以用2不同数字表示的第一个正整数是2。 我们可以说,1是与数字多样性的第一个整数1,并2与数字多样性的第一个整数2。 挑战: 给定一个正整数,则n返回其数字分集为的第一个正整数(以10为基数*)n。 *如果您的语言仅支持特定的基础(例如,一元或二进制),则可以以该基础输出。 理论上,您的算法必须适用于任何正整数输入:它可能会失败,因为语言整数的精度对于输出而言太小;但可能不会失败,因为仅定义了基本转换。 测试用例 input output 1 1 2 2 3 11 4 75 5 694 6 8345 7 123717 17 49030176097150555672 20 5271200265927977839335179 35 31553934355853606735562426636407089783813301667210139 63 3625251781415299613726919161860178255907794200133329465833974783321623703779312895623049180230543882191649073441 257 87678437238928144977867204156371666030574491195943247606217411725999221158137320290311206746021269051905957869964398955543865645836750532964676103309118517901711628268617642190891105089936701834562621017362909185346834491214407969530898724148629372941508591337423558645926764610261822387781382563338079572769909101879401794746607730261119588219922573912353523976018472514396317057486257150092160745928604277707892487794747938484196105308022626085969393774316283689089561353458798878282422725100360693093282006215082783023264045094700028196975508236300153490495688610733745982183150355962887110565055971546946484175232 这是代码高尔夫,以字节为单位的最短解决方案。 OEIS:A049363-也是基数n中最小的全景数字。

15
找到第n个完美的力量!
一个完美的力量是形式a**b,地点a>0和地点的数量b>1。 例如,125是完美的功效,因为它可以表示为5**3。 目标 n给定正整数,您的任务是编写找到第- 个完美幂的程序/函数n。 眼镜 第一个完美的力量是1(是1**2)。 以任何合理的格式输入/输出。 允许内置。 更多信息 OEIS A001597 计分 这是代码高尔夫球。以字节为单位的最短解决方案获胜。 测试用例 input output 1 1 2 4 3 8 4 9 5 16 6 25 7 27 8 32 9 36 10 49

20
分解一个数字!
您的任务是使用以下格式分解数字。 这与基本转换类似,不同之处在于digits,您列出了values,而不是在基本列表中列出,这样列表就加到了输入上。 如果给定的基为n,则列表中的每个数字都必须采用的形式k*(n**m),其中0<=k<n和m在整个列表中都是唯一的。 眼镜 任何合理的输入/输出格式。您的程序/功能需要2个输入并输出一个列表。 输出列表可以是任何顺序。 0 可以排除或包含。 0允许领导。 允许内置。 测试用例 number base converted list input1 input2 output 123456 10 [100000,20000,3000,400,50,6] or [6,50,400,3000,20000,100000] 11 2 [8,2,1] or [0,0,0,0,8,0,2,1] 727 20 [400,320,7] 101 10 [100,1] or [100,0,1] 计分 这是代码高尔夫球。以字节为单位的最短解决方案获胜。
16 code-golf  number  sequence  number-theory  base-conversion  code-golf  bitwise  hashing  code-golf  string  ascii-art  whitespace  code-golf  math  code-golf  code-golf  image-processing  counting  code-golf  math  arithmetic  checksum  code-golf  code-golf  math  arithmetic  number-theory  code-golf  array-manipulation  random  code-golf  string  code-golf  math  ascii-art  base-conversion  code-golf  graphical-output  geometry  3d  code-golf  math  linear-algebra  matrix  code-golf  math  number  sequence  code-golf  array-manipulation  code-golf  math  matrix  linear-algebra  code-golf  number  sequence  counting  code-golf  string  code-golf  string  restricted-source  quine  sorting  code-golf  string  geometry  code-golf  string  code-golf  networking  code-golf  base-conversion  code-golf  math  matrix  code-golf  arithmetic  linear-algebra  matrix  code-golf  number  arithmetic  grid  code-golf  number  source-layout  code-golf  string  bitwise  checksum  code-golf  array-manipulation  code-golf  string  probability-theory  code-golf  tips  code-golf  sequence  code-golf  string  math  sequence  calculus  code-golf  string  palindrome  bioinformatics  code-golf  math  combinatorics  counting  permutations  code-golf  parsing  logic-gates  code-golf  arithmetic  number-theory  combinatorics  code-golf  math  sequence  polynomials  integer  code-golf  string  ascii-art  chess  code-golf  string  code-golf  number  code-golf  string  ascii-art  parsing  code-golf  code-golf  number  natural-language  conversion  code-golf  arithmetic  code-golf  string  code-golf  ascii-art  decision-problem 

10
拆分,翻转和重组整数
背景 在数学上众所周知,整数可以与成对的整数一一对应。这样做有许多可能的方式,而且这种挑战,您将实现其中一个和它的逆运算。 任务 您的输入是一个正整数n > 0。已知存在唯一的非负整数,a, b ≥ 0例如。您的输出是正整数的“翻转版本” 。n == 2a * (2*b + 1)n2b * (2*a + 1) 您可以假定输入和输出适合您语言的标准无符号整数数据类型。 规则和计分 您可以编写完整的程序或函数。最低字节数获胜,并且不允许出现标准漏洞。 测试用例 它们以格式给出in <-> out,因为要实现的功能是它自己的反函数:如果将输出反馈给它,则应该获得原始输入。 1 <-> 1 2 <-> 3 4 <-> 5 6 <-> 6 7 <-> 8 9 <-> 16 10 <-> 12 11 <-> …

9
带字符串的基数转换
介绍 过去,我们在这里遇到了一些基本的转换挑战,但是设计用来处理任意长度数字(即足够长以至于它们溢出整数数据类型的数字)的设计并不多,其中大多数感到有些不足。复杂。我很好奇这样的基础代码更改如何获得成功。 挑战 用您选择的语言编写一个程序或函数,该程序或函数可以将一个基数的字符串转换为另一基数的字符串。输入应该是要转换的数字(字符串),从基数(以10为基数),以基数(以10为基数)和字符集(字符串)。输出应为转换后的数字(字符串)。 一些进一步的细节和规则如下: 要转换的数字将是一个非负整数(因为-它.可能在字符集中)。输出也将如此。 前导零(字符集中的第一个字符)应被修剪。如果结果为零,则应保留一个零数字。 支持的最小基本范围是2到95,由可打印的ASCII字符组成。 要转换的数字的输入,字符集和输出必须全部为字符串数据类型。基数必须是以10为底的整数数据类型(或整数浮点数)。 输入数字字符串的长度可能非常大。很难量化一个合理的最小值,但是期望它能够处理至少1000个字符,并在像样的机器上在不到10秒的时间内完成100个字符的输入(对于这种问题非常慷慨,但是我不想速度成为重点)。 您不能使用内置的基准变更功能。 字符集输入可以采用任何排列方式,而不仅仅是典型的0-9a-z ...等。 假设将仅使用有效输入。不用担心错误处理。 获胜者将由符合条件的最短代码确定。至少会在7个基准10天之内,或者是否/是否有足够的提交内容,来选择它们。如果出现平局,则运行速度更快的代码将是赢家。如果在速度/性能上足够接近,则较早出现的答案为准。 例子 这是您的代码应能够处理的一些输入和输出示例: F("1010101", 2, 10, "0123456789") > 85 F("0001010101", 2, 10, "0123456789") > 85 F("85", 10, 2, "0123456789") > 1010101 F("1010101", 10, 2, "0123456789") > 11110110100110110101 F("bababab", 2, 10, "abcdefghij") > if F("10", 3, 2, …

6
分形序列的收敛和
背景 甲分形序列是一个整数序列,其中可以除去的每一个整数的第一次出现,并用相同的序列之前结束。 这样一个非常简单的序列称为金伯林的释义。您从正自然数开始: 1, 2, 3, 4, 5, 6, 7, 8, 9, ... 然后,您可以在空白处进行调整: 1, _, 2, _, 3, _, 4, _, 5, _, 6, _, 7, _, 8, _, 9, ... 然后重复使用序列本身(包括空白)填充空白: 1, 1, 2, _, 3, 2, 4, _, 5, 3, 6, _, 7, 4, 8, _, 9, …

6
在除数关系中找到最大匹配
您会得到一组正整数。您必须将它们成对布置,以便: 每对包含2个数字,其中一个是另一个的倍数。例如,8是4的倍数,而9是9的倍数。 如果在初始集中多次出现相同的数字,则可以成对使用多次。一个数字甚至可以与另一个相同数字出现 获得最大可能的对数。 输出必须是对数。最短的代码获胜。 样本数据 2,3,4,8,9,18 -> 3 7,14,28,42,56 -> 2 7,1,9,9,4,9,9,1,3,9,8,5 -> 6 8,88,888,8888,88888,888888 -> 3 2,6,7,17,16,35,15,9,83,7 -> 2

4
测试数字是否为平方
编写一个GOLF汇编程序,给定寄存器中的64位无符号整数,如果是正方形,则将n非零值放入寄存器中,否则将放入寄存器中。sn0s 您的GOLF二进制文件(组装后)必须适合4096个字节。 您的程序将使用以下Python3程序(必须放在GOLF目录中)进行评分: import random, sys, assemble, golf, decimal def is_square(n): nd = decimal.Decimal(n) with decimal.localcontext() as ctx: ctx.prec = n.bit_length() + 1 i = int(nd.sqrt()) return i*i == n with open(sys.argv[1]) as in_file: binary, debug = assemble.assemble(in_file) score = 0 random.seed(0) for i in range(1000): cpu = golf.GolfCPU(binary) if …

9
生成霍夫施塔特的人形图序列
在Gödel,Escher,Bach中,Douglas Hofstadter引入了一个整数序列,该序列通常被称为数字图形序列: 2, 4, 5, 6, 8, 9, 10, 11, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 24, 25, ... 作为挑战的一部分,您可能会喜欢自己确定序列的定义,但是,如果您不能或不想弄清楚它的定义,可以在OEIS上找到它作为序列A030124,在Wikipedia上找到一个稍微清晰的定义。 编写一个程序或函数,该程序或函数n通过STDIN,ARGV或函数参数给出,n以任何合理的列表格式将序列的第一个数字的列表打印到STDOUT。 这是代码高尔夫,最短的解决方案以字节为单位。

7
小数点表示的期间
编写一个函数,该函数采用单个正整数n并返回小数表示形式的周期1 / n。 测试用例: 1 -> 1 # 1/1 = 1.0000...... = 1._0 2 -> 1 # 1/2 = 0.5000...... = 0.5_0 3 -> 1 # 1/3 = 0.3333...... = 0._3 7 -> 6 # 1/7 = 0.14285714.. = 0._142857 13 -> 6 14 -> 6 123 -> 5 345 …

9
2的幂的后k位
对于任何整数,都有一个2的幂,最后一个位数为1或2。r[Rrr[Rr 给定,找到最小的,使得仅包含1或2。r[RrxXx2xmod10r2X模10[R2^x\bmod{10^r} 对于r=2[R=2r=2,x=9X=9x=9,因为29=51229=5122^9=5\color{blue}{\textrm{12}} 对于r=3[R=3r=3,x=89x=89x=89,因为289=618970019642690137449562112289=6189700196426901374495621122^{89}=618970019642690137449562\color{blue}{\textrm{112}} 注意:r=4r=4r=4,xxx是=89=89=89(再次) 输入:r≤100r≤100r \leq 100 输出:xxx 例如。 输入:2 输出:9 输入:3点 :89 该程序应在合理的时间内运行。 编辑:此挑战的oeis序列是A147884。

30
毫不留情的数字
一个波状号码是一个号码,其中其数字之间交替向上和向下像下面的编号:461902或708143,或甚至1010101,但不是123,因为2 <3。 写一个程序或功能,如果一个数是它返回一个truthy值起伏,否则一个falsy值。最短的代码获胜。 注意:一位数字是有效输入,但不视为udulant,因此isUndulant对于n <10 ,返回false。

11
产生一些粗略的数字
背景 如果所有主要因子均严格超过,则数字n可描述为B-rough 。nB 挑战 给定两个正整数B和k,输出第一个k B-粗数。 例子 设f(B, k)一个函数,该函数返回包含第一个k B-粗数字的集合。 > f(1, 10) 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 > f(2, 5) 1, 3, 5, 7, 9 > f(10, 14) 1, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59

16
一个数是连续质数之和的方式数
给定一个大于1的整数,输出将其表示为一个或多个连续素数之和的方式数。 补数的顺序无关紧要。一个和可以包含一个数字(因此任何质数的输出至少为1。) 这是代码高尔夫球。适用标准规则。 有关相关信息和序列,包括序列本身的OEIS A054845,请参阅此OEIS Wiki。 测试用例 2 => 1 3 => 1 4 => 0 5 => 2 6 => 0 7 => 1 8 => 1 10 => 1 36 => 2 41 => 3 42 => 1 43 => 1 44 => 0 311 => 5 1151 …

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.