Questions tagged «number-theory»

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

30
无效的Invali无效
这个想法大致基于@TùxCräftîñg的聊天消息。 看一下下面的示例序列: INVALID0,INVALID1,INVALID2 INVALID3,INVALID4...INVALID9 之后INVALID9,它像这样继续: INVALI0,INVALI1,INVALI2,INVALI3...INVALI9 之后INVALI9,是这样的: INVAL0,INVAL1,INVAL2,INVAL3...INVAL9 之后,INVAL9是这样的: INVA0,INVA1,INVA2,INVA3,...INVA9 注意我们如何INVALID每次都从单词中删除字母。 您将不断重复此操作,直到到达单个字母,即字母I: I0,I1,I2,I3,I4...I9 现在,您的任务是,像上例一样,输入一个单词,并从中产生一个序列。您的代码还必须使用单个字母,在这种情况下,结果序列将更短。 您可以选择自己喜欢的任何输入和输出格式(根据需要选择带或不带分隔符),但是必须指定选择的格式。 顺序必须严格按照指定的顺序进行。 成功完成此挑战的最短代码(以字节为单位)将赢得挑战。 上例中的完整序列: INVALID0, INVALID1, INVALID2, INVALID3, INVALID4, INVALID5, INVALID6, INVALID7, INVALID8, INVALID9, INVALI0, INVALI1, INVALI2, INVALI3, INVALI4, INVALI5, INVALI6, INVALI7, INVALI8, INVALI9, INVAL0, INVAL1, INVAL2, INVAL3, INVAL4, INVAL5, INVAL6, INVAL7, INVAL8, INVAL9, INVA0, INVA1, …

18
旋转对称数
给定一个整数,如果它是相同的上下颠倒(旋转180°),则输出真实值,否则输出虚假值。 0,1并且8具有旋转对称性。6成为9,反之亦然。 产生真实结果的数字序列:OEIS A000787 0, 1, 8, 11, 69, 88, 96, 101, 111, 181, 609, 619, 689, 808, 818, 888, 906, 916, 986, 1001, 1111, 1691, 1881, 1961, 6009, 6119, 6699, 6889, 6969, 8008, 8118, 8698, 8888, 8968, 9006, 9116, 9696, 9886, 9966, 10001, 10101, 10801, 11011, 11111, 11811, 16091, …
27 code-golf  number  sequence  decision-problem  code-golf  string  parsing  c  code-golf  sorting  integer  code-golf  number  sequence  rational-numbers  graphical-output  atomic-code-golf  assembly  box-256  code-golf  geometry  tips  python  code-golf  number  sequence  arithmetic  number-theory  code-golf  ascii-art  kolmogorov-complexity  geometry  code-golf  graphical-output  code-golf  math  code-golf  grid  cellular-automata  game-of-life  code-golf  string  subsequence  code-golf  arithmetic  rational-numbers  code-golf  tips  dc  code-golf  ascii-art  kolmogorov-complexity  date  code-golf  string  primes  code-golf  string  natural-language  conversion  code-golf  sequence  code-golf  number-theory  primes  base-conversion  code-golf  math  primes  base-conversion  code-golf  ascii-art  fractal  code-golf  matrix  code-golf  math  tips  geometry  python  string  code-challenge  keyboard  code-golf  graphical-output  code-golf  string  code-golf  number  sequence  cops-and-robbers  number  sequence  cops-and-robbers 

11
计算n%12
计算无符号32位整数的n模12。 规则: 必须适用于n0到23之间的所有数字。其他数字是可选的。 必须只使用任何运营商+-*,~&^|或者<<,>>作为在32位的uint通常定义。 可以使用任意数量的常量单位。 不得使用任何形式的指针,包括数组或任何if语句,包括编译到if语句的内容(例如三元运算符或“大于”运算符)。 得分: 运算符+ -和按位运算符~ & ^ | << >>(NOT,AND,XOR,OR,位移)的得分为1,*得分为2。 最低总分获胜。

30
计算欧拉的上位函数
背景 欧拉欧拉 函数φ(n)较少定义为整数的数目大于或等于n互质到n,即,可能的值的数目x在0 < x <= n为其 gcd(n, x) == 1。我们有 一个 小 欧拉 - 相关 的挑战 面前,但从来没有一个这只是计算它。 上位函数到整数的映射是OEIS A000010。 挑战 给定一个整数n > 0,计算φ(n)。您可以通过命令行参数,标准输入,函数参数或其他任何合理的方式接受输入。您可以通过标准输出,返回值或其他任何合理的方式给出输出。可接受匿名函数。您可能会假设输入不会溢出存储整数的自然方法,例如int在C中,但是您必须支持最多255个输入。 如果您的语言具有内置的totient函数,则可能无法使用它。 例子 φ(1) => 1 φ(2) => 1 φ(3) => 2 φ(8) => 4 φ(9) => 6 φ(26) => 12 φ(44) => 20 φ(105) => 48 …

22
稀释整数和
可以通过在二进制扩展的两位之间插入a 来稀释正整数0。这意味着- n位数字具有n-1稀释度,稀释度不一定全部不同。 例如,对于12(或1100以二进制形式),稀释为 11000 = 24 ^ 11000 = 24 ^ 10100 = 20 ^ 在此挑战中,我们将取所有稀释液的总和,不包括原始数量。因为12,取24, 24, 20结果的总和68,因此68的输出也应该是12。 挑战 给定一个正整数n > 1作为输入,输出/返回如上所述的稀释总和。 例子 in out --- --- 2 4 3 5 7 24 12 68 333 5128 512 9216 规则 可以假定输入和输出适合您语言的本机整数类型。 输入和输出可以任何方便的格式给出。 完整的程序或功能都是可以接受的。如果是函数,则可以返回输出而不是打印输出。 禁止出现标准漏洞。 这是代码高尔夫球,因此所有常见的高​​尔夫规则都适用,并且最短的代码(以字节为单位)获胜。

22
它是弱质素吗?
如果最接近的其他素数小于素数,则素数是弱的。如果有平局,则素数并不弱。 例如73是弱素数,因为71是素数,而75是复合数。 任务 编写一些计算机代码,当输入大于2的质数时,将确定它是否为弱质数。这是一个标准的决策问题,因此您应针对两种情况(例如weak和not weak)分别输出两个唯一值。 这是代码高尔夫球,因此适用标签的标准规则。 信息系统 以下是前47个弱素数: 3, 7, 13, 19, 23, 31, 43, 47, 61, 73, 83, 89, 103, 109, 113, 131, 139, 151, 167, 181, 193, 199, 229, 233, 241, 271, 283, 293, 313, 317, 337, 349, 353, 359, 383, 389, 401, 409, 421, 433, 443, 449, …

21
与邻居交换位
任务描述 给定一个整数,将其第(2k-1)个和第2k个最低有效位交换为所有k> 0的整数。这是OEIS中的序列A057300。 (假定该数字具有“无限多个”前导零。实际上,这仅意味着在奇数长度的数字前添加一个0位。) 这是code-golf,所以最短的代码(以字节为单位)获胜。 测试用例 0 -> 0 1 -> 2 9 -> 6 85 -> 170 220 -> 236 1827 -> 2835 47525 -> 30298

3
残数系统
就大量挑战而言,我认为这可能很有趣。 在此挑战中,我们将使用残数系统(RNS)对大整数执行加法,减法和乘法。 什么是RNS RNS是人们开发用于识别整数的多种方法之一。在该系统中,数字由一系列残差表示(它们是模运算后的结果(即整数除法后的余数))。在此系统中,每个整数都有许多表示形式。为了使事情简单,我们将限制事情,以便每个整数都唯一表示。我认为用一个具体的例子来描述正在发生的事情比较容易。 让我们看一下前三个质数:2、3、5。在RNS系统中,我们可以使用这三个数来唯一表示任何小于2 * 3 * 5 = 30的残数。采取21: 21小于30,因此我们可以使用将2、3和5修改后的结果来表示它(即,整数除以2、3和5之后的余数) 我们将使用以下整数序列来标识21: 21〜{21 mod 2,21 mod 3,21 mod 5} = {1,0,1} 因此,在我们的RNS系统中,我们将使用{1,0,1}而不是“ 21”。 通常给定整数n,我们将n表示为{ n mod 2,...,n mod p_k },其中p_k是最小素数,因此n小于等于或等于p_k的所有素数的乘积。 另一个例子,假设我们有3412。在这里我们需要使用2,3,5,7,11,13,因为2*3*5*7*11*13=30030而2*3*5*7*11=2310这太小了。 3412〜{3412 mod 2,3412 mod 3,3412,mod 5,...,3412 mod 13} = {0,1,2,3,2,6} 您会注意到,使用此系统,我们可以相对轻松地表示非常大的数字。使用{1,2,3,4,5,6,7,8,...}残基,我们可以表示最多{2,6,30,210,2310,30030,510510,9699690 ...}分别。(这是系列) 我们的任务 我们将使用这些残基对大数进行+,-和*。我将在下面描述这些过程。现在,这里是输入和输出规格。 输入项 您将通过stdin或function参数获得两个(可能非常大)的数字。它们将以基数为10的字符串给出。 为了进一步概述问题,我们将第一个输入n称为第二个输入m。假设n> m> …

30
AGM系列孔1:计算算术-几何平均值
这个问题的灵感来自于总部。 关于系列 这个问题现在是有关AGM方法的系列文章的一部分。本系列的第一篇文章将关于实际计算AGM。您可以像对待其他任何代码高尔夫挑战赛一样对待它,并回答它而不必担心系列赛。但是,在所有挑战中都有排行榜。 什么是算术几何均值 两个数的算术几何均值定义为反复采用算术和几何均值收敛的数。您的任务是在一些n迭代后找到该数字。 澄清说明 您可以a, b, n采用任何合理格式的三个数字。 对于n迭代,取算术和几何平均值a,并b与设置那些a和b。 对于两个数字a和b,算术平均值被定义为(a + b) / 2。 几何平均值定义为√(a * b)。 a并且b应该互相接近。 然后,输出a和b。 您不必担心浮动不精确等问题。 这是代码高尔夫球,因此以字节为单位的最短代码胜出! 测试用例 [0, [24, 6]] -> [24, 6] [1, [24, 6]] -> [15.0, 12.0] [2, [24, 6]] -> [13.5, 13.416407864998739] [5, [24, 6]] -> [13.458171481725616, 13.458171481725616] [10, [100, 50]] …

30
计算一个数的除数
介绍 这是一个非常简单的挑战:只需计算一个数的除数即可。以前我们遇到过类似但更复杂的挑战,但我打算将此作为入门级。 挑战 创建一个程序或函数,给定一个严格的正整数N,该程序或函数输出或返回其具有的除数,包括1和N。 输入:一个大于0的整数。您可以假设该数字可以用您的语言的本机数字类型表示。 输出:它具有的正整数除数的数量,包括1和数字本身。 提交内容将以字节计分。尽管您可以使用任何合理的方法来生成字节数,但您可能会发现此网站很方便。 这是代码高尔夫球,因此最低分获胜! 编辑:看来FryAmTheEggman的5个字节的Pyth答案是赢家!不过,请随时提交新答案。如果您能得到更短的答案,我将更改接受的答案。 测试用例 ndiv(1) -> 1 ndiv(2) -> 2 ndiv(12) -> 6 ndiv(30) -> 8 ndiv(60) -> 12 ndiv(97) -> 2 ndiv(100) -> 9 排行榜 这是一个堆栈片段,用于按语言生成常规排行榜和获胜者概述。 为确保您的答案显示出来,请使用以下Markdown模板以标题开头。 # Language Name, N bytes N您提交的文件大小在哪里。如果您提高了分数,则可以通过打败旧分数来保持标题。例如: # Ruby, <s>104</s> <s>101</s> 96 bytes 如果要在标题中包含多个数字(例如,因为您的分数是两个文件的总和,或者您想单独列出解释器标志的惩罚),请确保实际分数是标题中的最后一个数字: # Perl, 43 …

20
我是否完美(数字)?
这是我的第一个挑战! 背景 完美数是一个正整数,等于除其本身以外所有除数的总和。 因此6,完美数是1 + 2 + 3 = 6。 另一方面12不是,因为1 + 2 + 3 + 4 + 6 = 16 != 12。 任务 您的任务很简单,编写一个程序,对于给定的程序,将n打印以下消息之一: 我是一个完美的数字,因为d1 + d2 + ... + dm = s == n 我不是一个完美的数字,因为d1 + d2 + ... + dm = s [<>] n 除的 d1, ... …

12
回文残留
我写这篇文章的今天是3月31日。在美国,这是3/31。我正在331和一个数字玩耍以提出挑战,结果发现它的残基(模数小)是回文的。331%2=1, 331%3=1, 331%4=3, 331%5=1, 331%6=1(11311)。 您面临的挑战是,给定一个整数时n > 2,输出n取模余数时具有回文残差的第一个正数[2,n]。 例如,对于输入7,输出应为1, 42, 43, 140, 182, 420, 421。这是解释这种情况的图表: mod num | 2 3 4 5 6 7 ----------------- 1 | 1 1 1 1 1 1 42 | 0 0 2 2 0 0 43 | 1 1 3 3 1 1 140 …

22
递归字符串替换
任务 编写一个程序或函数,给出给定的三个字符串A, B, C会生成一个输出字符串,其中Bin的每个实例A都已用递归替换C。递归替换表示重复替换,其中在每一步中Bin的所有不重叠实例A(从左到右贪婪地选择)都替换为,C直到B不再包含在中A。 输入输出 您可以对I / O使用任何默认方法。 字符串将仅包含可打印的ASCII字符(并且可以包含任何一个)。 B永远不会是一个空字符串,而A并且C可能是。 字符串应被视为纯文本,例如,您不能将其B视为Regex模式。 输入的某些组合永远不会终止。在这种情况下,您的程序可以执行任何操作。 测试用例 这些格式为: A/B/C\nOutput Hello, world!/world!/PPCG Hello, PPCG Uppercase is up/up/down Uppercase is down ababababa/aba/ccc cccbcccba delete/e/{empty string} dlt {empty string}/no/effect {empty string} llllrrrr/lr/rl rrrrllll +-+-+-+/+-+/+ + ababababa/aba/bada badabbadbada abaaba/aba/ab abb ((())())())/()/{empty string} ) 不会终止的示例: grow/ow/oow loop/lo/lo
25 code-golf  string  substitution  code-golf  math  code-golf  string  set-theory  code-golf  code-golf  compile-time  code-golf  kolmogorov-complexity  binary  code-golf  sequence  cops-and-robbers  code-golf  subsequence  card-games  code-golf  sequence  primes  code-golf  code-golf  number  graphical-output  music  code-golf  ascii-art  code-golf  string  lambda-calculus  code-golf  string  code-generation  code-golf  unicode  code-golf  math  combinatorics  code-golf  balanced-string  code-golf  sequence  cops-and-robbers  code-golf  sequence  cops-and-robbers  code-challenge  fastest-code  chess  code-golf  math  graphical-output  code-golf  string  hello-world  animation  code-golf  number  arithmetic  code-golf  integer  code-golf  code-golf  combinatorics  code-golf  kolmogorov-complexity  graphical-output  code-golf  string  code-golf  code-golf  game  code-golf  math  combinatorics  code-golf  ascii-art  popularity-contest  random  code-golf  arithmetic  number-theory  integer  code-golf  tips  underload  code-golf  math  sequence  primes  code-golf  math  path-finding  code-golf  ascii-art  primes  code-golf  kolmogorov-complexity  alphabet 

16
近似布伦常数
布伦常数是其中的倒数之和的值孪生素数对(1/p与1/(p+2)其中p和p+2都是素数)收敛。大约是1.902160583104。 给定一个正整数N,通过将双素数对中的两个素数均小于的双素数对的倒数相加来近似布伦常数N,并输出近似值。 规则 N 将是您的语言可表示范围内的正整数。 在您的语言的浮点实现限制内,输出必须尽可能精确到真实值,而忽略由于浮点算术错误而引起的任何潜在问题。如果您的语言能够执行任意精度算术,则它必须至少与IEEE 754双精度算术一样精确。 或者,可以以任何一致,明确的格式输出精确的分数。 如果一个主要出现在多个孪生素对(例如5,二者的一部分(3, 5)和(5, 7)),其倒数有助于总和各一次。 测试用例 2 -> 0 6 -> 0.5333333333333333 10 -> 0.8761904761904762 13 -> 0.8761904761904762 100 -> 1.3309903657190867 620 -> 1.4999706034568274 100000 -> 1.67279958482774

12
产生惰性值
相关:对我的微波炉编程。受生成懒惰微波输入的启发。 非负整数N的惰性值是最接近N的整数中最小的,而它们的所有数字都相同。 返回(通过任何手段)的给定(通过任何手段)懒惰值Ñ。 ñ ≤ 你的语言代表了非指数形式默认的最大整数。1000000(由于此过高的要求,许多有趣的解决方案丢失了。) 测试用例: 0 → 0 8 → 8 9 → 9 10 → 9 16 → 11 17 → 22 27 → 22 28 → 33 100 → 99 105 → 99 106 → 111 610 → 555 611 → 666 7221 → 6666 7222 …

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.