Questions tagged «primes»

遇到有关识别和处理质数的挑战

6
找出有理生成函数的系数
如果我们写一个数字序列作为幂级数的系数,则该幂级数称为该序列的(普通)生成函数(或Gf)。也就是说,如果对于某些函数F(x)和整数系列,a(n)我们有: a(0) + a(1)x + a(2)x^2 + a(3)x^3 + a(4)x^4 + ... = F(x) 然后F(x)是的生成函数a。例如,几何级数告诉我们: 1 + x + x^2 + x^3 + x^4 + ... = 1/(1-x) 因此,的生成函数1, 1, 1, ...为1/(1-x)。如果我们对上面方程的两边求和并乘以x得到以下等式: x + 2x^2 + 3x^3 + 4x^4 + ... = x/(1-x)^2 因此,的生成函数1, 2, 3, ...为x/(1-x)^2。生成函数是一个非常强大的工具,您可以使用它们来做很多有用的事情。在这里可以找到简短的介绍,但是要获得真正彻底的解释,请参见惊人的图书生成功能学。 在此挑战中,您将有理函数(两个具有整数系数的多项式的商)作为两个整数系数数组的输入作为输入,首先是分子,然后是分母。例如,功能f(x) = x …
12 code-golf  math  integer  polynomials  code-golf  math  abstract-algebra  restricted-time  code-golf  math  primes  code-golf  math  number  arithmetic  code-golf  quine  code-golf  number  sequence  code-golf  string  number  code-golf  array-manipulation  code-golf  number  code-golf  string  code-golf  arithmetic  code-golf  string  array-manipulation  rubiks-cube  code-golf  math  number  code-golf  tips  bash  code-golf  ascii-art  music  code-golf  arithmetic  code-golf  math  number  arithmetic  integer  code-golf  number  array-manipulation  code-golf  geometry  grid  set-partitions  code-golf  math  number  code-golf  combinatorics  code-golf  regular-expression  code-golf  permutations  code-golf  ascii-art  code-golf  number  array-manipulation  matrix  code-golf  kolmogorov-complexity  compile-time  cops-and-robbers  polyglot  cops-and-robbers  polyglot  code-golf  string  code-golf  string  ascii-art  matrix  animation  code-golf  ascii-art  code-golf  string  balanced-string  code-golf  integer  integer-partitions  expression-building 

14
用零填充文件
今天的任务是获取一个现有文件,并将零添加到该文件,直到达到一定大小为止。 您必须编写一个程序或函数,该程序或函数采用当前目录中文件的名称f和字节数b。在保留的原始内容的同时f,您必须在末尾写入零(空字节,而不是ascii 0),以便其新大小为b字节。 您可以假设名称中f仅包含字母数字的ascii,您对此具有完全权限,其初始大小不大于b,但可能与一样大b,并且有无限的可用磁盘空间。 您可能不会假设f它是非空的,或者它不已经包含空字节。 执行结束后,不应修改其他现有文件,也不应该存在新文件。 测试用例 f的内容| b | f的结果内容 12345 | 10 | 1234500000 0 | 3 | 000 [空] | 2 | 00 [空] | 0 | [空] 123 | 3 | 123
12 code-golf  file-system  code-golf  code-golf  string  code-golf  string  code-golf  random  game  compression  code-golf  array-manipulation  sorting  code-golf  number  arithmetic  primes  code-golf  geometry  code-golf  code-golf  decision-problem  regular-expression  code-golf  string  math  code-challenge  restricted-source  integer  palindrome  code-golf  string  palindrome  code-challenge  busy-beaver  code-golf  ascii-art  code-golf  string  code-golf  string  permutations  code-golf  code-golf  string  permutations  code-golf  number  primes  function  set-theory  code-challenge  hello-world  code-golf  math  number  decision-problem  code-golf  code-golf  sequence  arithmetic  integer  code-golf  math  number  arithmetic  decision-problem  code-golf  kolmogorov-complexity  alphabet  code-golf  combinatorics  graph-theory  tree-traversal  code-golf  set-theory  code-golf  interpreter  brainfuck  substitution  code-golf  quine  permutations 

11
负阶整数挑战,但这是黄金时间!
我在谈论这个问题,如果您有点困惑,请看一下。 主要任务 您的任务是按降序输出级联整数,但每次击中时都增加最大整数1 (对于此问题,1将被视为质数)。尽管这听起来与第一个问题没有什么不同,但棘手的是:所有输出的数字可能只是质数。将这些字符串串在一起,没有空格或换行符。您的输入也将是质数。 例: 1 21 321 5321 75321 1175321 Valid output: 1213215321753211175321 输入值 您的代码只能输入一个:要打印的最高质数。此输入可以来自任何地方(图形,STDIN)。您可以确保输入的是质数。 输出量 您将必须输出结果编号。您可以通过递减计数来获得该数字,仅当其为质数时才计算该数字,然后将所有结果连接到一个数字上。最后一个数字“行”(例如7, 5, 3, 2, 1)必须完整打印。只要可读,输出就可以是任何东西(数字,字符串,图形)。适用于检查测试用例的相同Regex模式: ^(\D*(\d)+\D*|)$ 如果您的输出与此模式不匹配,则您的代码无效。 规则 除非您希望/需要输入,否则请确保输入是素数,不包括错误处理。 输出可能只是一个全连接的数字,因此不会被任何东西分割,甚至不会换行。 您的算法不应检查N出现的第一个实例(例如17in 1175321),而应检查的第一个实例N作为实际数字。 确保您的输入是肯定的,除非您需要/不要添加处理。 测试用例 Input: -2, 0 Output: Any, or none (number isn't positive) Input: 9 Output: Any, or none (number isn't prime) …

8
密数序列
OEIS:A167171 阿密号是一个数字,具有完全一样多素因子作为无素因数(包括1和本身作为除数)。等效地,它是素数或两个不同素数的乘积。前100个密集数字为: 2, 3, 5, 6, 7, 10, 11, 13, 14, 15, 17, 19, 21, 22, 23, 26, 29, 31, 33, 34, 35, 37, 38, 39, 41, 43, 46, 47, 51, 53, 55, 57, 58, 59, 61, 62, 65, 67, 69, 71, 73, 74, 77, 79, 82, 83, 85, 86, …

2
解释基普尔!
介绍 Kipple是Rune Berg于2003年3月发明的基于堆栈的深奥编程语言。 Kipple有27个堆栈,4个运算符和一个控制结构。 堆栈 堆栈被命名为a- z并包含32位带符号整数。还有一个特殊的堆栈,@使输出数字更加方便。当将数字压入时@,实际上将压入该数字的ASCII值。(例如,如果您将12推到@,它将推49,然后推50。@) i在执行程序之前,将输入压入输入堆栈。解释器将i在执行之前要求存储值。执行完成后,输出堆栈上的所有内容o都会弹出以ASCII字符形式输出。由于这是Kipple唯一的IO机制,因此无法与Kipple程序进行交互。 经营者 操作数可以是堆栈标识符或带符号的32位整数。 推送:>或< 语法:Operand>StackIndentifier或StackIndentifier<Operand Push运算符将操作数向左移并将其推入指定的堆栈。例如,12>a将值12推入stack a。a>b将从堆栈中弹出最高值a并将其推入堆栈b。弹出空堆栈总是返回0 a<b相当于b>a。a<b>c从弹出最高值,b并同时推入c和a。 加: + 句法: StackIndentifier+Operand Add运算符将堆栈上最顶层项目和操作数之和压入堆栈。如果操作数是堆栈,则从中弹出值。例如,如果堆栈的最高值为a1,a+2则将3压入堆栈。如果a为空,a+2则将2推入。如果堆叠的最值a和b是1和2,然后a+b将从栈中弹出的值2 b和3推入堆栈a。 减去: - 句法: StackIndentifier-Operand 减法运算符的工作方式与加法运算符完全相同,只是它减去而不是加法。 明确: ? 句法: StackIndentifier? 如果最上面的项目为0,则Clear运算符将清空堆栈。 解释器将忽略操作符旁边不存在的所有内容,因此以下程序将起作用:a+2 this will be ignored c<i。但是,添加注释的正确方法是使用#字符。#执行前,a 和行尾字符之间的所有内容都将被删除。ASCII字符#10在Kipple中定义为行尾。 操作数可以由两个运算符共享,例如a>b c>b c?可以写为a>b<c?。 该程序1>a<2 a+a将导致a包含值[1 4](从下到上),而不是[1 3]。对于-操作员也是如此。 控制结构 Kipple中只有一种控制结构:循环。 句法: (StackIndentifier code …
12 code-golf  interpreter  code-golf  string  code-golf  math  string  code-golf  ascii-art  path-finding  code-golf  string  ascii-art  code-golf  interpreter  binary  logic-gates  logic  code-golf  ascii-art  code-golf  graph-theory  code-golf  string  code-golf  number  sorting  code-golf  number-theory  random  cryptography  polynomials  code-golf  number  code-golf  math  number  sequence  code-golf  quine  code-generation  code-golf  arithmetic  set-theory  code-golf  sequence  code-golf  code-golf  string  math  fastest-code  optimization  code-golf  code-golf  internet  stack-exchange-api  code-golf  array-manipulation  code-golf  string  internet  string  code-challenge  internet  test-battery  code-golf  math  pi  code-golf  arithmetic  primes  code-golf  array-manipulation  code-golf  string  code-golf  string  palindrome  code-golf  sequence  number-theory  fastest-algorithm  code-golf  math  number  base-conversion  code-golf  number-theory  sorting  subsequence  search  code-golf  permutations  code-challenge  popularity-contest  code-generation 

4
帮助重新计算您的代表!
几个月前,我们在meta上进行了讨论,讨论如何提高因问题投票而获得的声誉。这是我们目前的投票信誉系统的基础:1 问题投票U值得5个声望。 回答投票u值得10个声誉。 问题或答案不满意d的人值得-2声望。 对于新系统,已经有许多不同的建议,但是当前最受欢迎的与上面的相同,但是问题投票的比例扩大到+10个代表。这项挑战是要计算出安装该系统后您将获得多少代表。 让我们来看一个例子。如果投票活动为UUUUuuuuUUUUUduuudUU,则在当前系统下,您的收入为121: U x 4 x 5 = 20 = 20 u x 4 x 10 = 40 = 60 U x 5 x 5 = 25 = 85 d x 1 x -2 = -2 = 83 u x 3 x 10 = 30 = …

14
复合数字序列
复合数字序列 灵感来自这个问题 给定正整数n,您的代码必须输出前n个复合数字。 输入输出 您可以编写程序或函数。输入通过STDIN或函数自变量,输出到STDOUT或函数返回值。 输出可以是列表,数组或字符串。 例子 0 -> 1 -> 4 2 -> 4, 6 3 -> 4, 6, 8 13 -> 4, 6, 8, 9, 10, 12, 14, 15, 16, 18, 20, 21, 22 规则 与往常一样,不允许出现标准漏洞。 不允许生成素数或合成数的内置函数。 不允许与质数或合成数相关的内建函数。

9
配对高尔夫双素数和Collat​​z序列
这是受到恢复变异的源代码问题启发的一种新挑战。 您应该用相同的语言编写两个程序或函数。第一个应解决任务1,第二个应解决任务2。 您的分数将是较长程序与两个程序源代码之间的Levenshtein距离的总和。分数越低越好,因此您应尝试使两个解决方案相似,同时保持程序长度短。 任务1 您将得到一个正整数N,你应该输出在Collat​​z序列的N用空格或换行分隔。允许使用尾随分隔符。 Collat​​z序列的第一个元素是N。其余元素基于其后继:一个i − 1一个一世-1个a_{i-1} 一个一世= { 一i − 123 个i − 1+ 1 如果 一个i − 1 甚至 如果 一个i − 1 很奇怪一个一世={一个一世-1个2 如果 一个一世-1个 甚至3一个一世-1个+1个 如果 一个一世-1个 很奇怪 a_i = \begin{cases} \frac{a_{i-1}}{2} & \text{ if } a_{i-1} \text{ is even} \\ 3a_{i-1} + 1 & …

8
这些矿山永远是实线
让我们创建一个N×N的空格和下划线网格,可用于直观地确定数字是否为质数。(N可以是任何正整数。) 该网格具有三个简单规则: 第n列包含n-1下划线的重复模式,后跟一个空格。此模式从第一行开始,并在第N行停止(可能在中间模式)。(行和列为1索引)。 第一列将替换为所有下划线而不是所有空格。 如果行索引等于列索引的某个位置出现空格,则将其替换为下划线。 示例:N = 10 1 1234567890 <-- column indices 1__________ 2__________ 3__________ 4_ ________ 5__________ 6_ _______ 7__________ 8_ _ ______ 9__ _______ 10_ __ _____ ^ row indices 索引只是为了清楚起见。普通网格本身(程序必须输出的)是: __________ __________ __________ _ ________ __________ _ _______ __________ _ _ ______ __ _______ _ __ …
12 code-golf  primes 

1
通过整数操作实现IEEE 754 64位二进制浮点数
(我暂时将问题标记为“ C”,但是如果您知道另一种支持联合的语言,则也可以使用它。) 您的任务是+ - * /为以下结构构建四个标准数学运算符: union intfloat{ double f; uint8_t h[8]; uint16_t i[4]; uint32_t j[2]; uint64_t k; intfloat(double g){f = g;} intfloat(){k = 0;} } 这样操作本身就只能操纵或访问整数部分(因此也不能在操作过程中的任何时候都与double进行比较),并且结果是完全相同的(对于非数字结果,例如,功能上是等效的NaN)好像相应的数学运算已直接应用于double。 您可以选择要操作的整数部分,甚至可以在不同的运算符之间使用不同的整数部分。(尽管我不确定您是否要这样做,您也可以选择从联合中的任何字段中删除“未签名”。) 您的分数是四个运算符中每个字符的代码长度总和。最低分获胜。 对于不熟悉IEEE 754规范的我们来说,这是一篇有关Wikipedia的文章。 编辑: 03-06 08:47在intfloat结构中添加了构造函数。您可以使用它们进行测试,而不必手动设置double /etc。

16
质数很大
给定一个很大的数字(以10为底),例如1234567891011121314151617,请在其中找到素数“ subnumbers”。 素数“子数”是连续的数字序列(从输入中获取),代表一个素数(以10为底)。 输入:数字(字符串,文件或任何您喜欢的数字)。 输出:所有素数子数字都以某种方式分隔(在列表,文件,逗号分隔的字符串中……)如果结果为空,则可以采用任何喜欢的约定(硬编码字符串,空字符串,乱码,但程序不应崩溃。 示例 1234-> 2、3、23 6542-> 5、2 14-> [..空输出] 这是代码高尔夫球。最短的程序获胜! [edit]:附加规则,程序必须说明!并不是每个人都精通果冻:)

4
解码因子树
如果您错过了编码因子树,这是因子树的定义: 空字符串为1。 串联表示乘法。 括号(或任何成对的字符)中包含的数字n表示第n个质数,其中2是第一个质数。 请注意,这是递归完成的:第n个素数是括号中n的因数树。 数量的因数应按从小到大的顺序排列。 例如,以下是2到10的因子树: () (()) ()() ((())) ()(()) (()()) ()()() (())(()) ()((())) 这个挑战使用了类似的格式。然而,这个挑战是对这些结构进行解码。 测试用例 无耻地被盗 改变用途从上个挑战。 除了上面的9个之外…… ()()((()))((())) => 100 (()(()(()))) => 101 (()())(((())))(()(())) => 1001 (((((((()))))))) => 5381 (()())((((()))))(()()(())(())) => 32767 ()()()()()()()()()()()()()()() => 32768 规则 输入中的成对字符是您选择的括号,方括号,大括号或尖括号。如果要求,我可以允许其他格式(例如XML标记)。 您应该能够处理2到2 15或32768中任何数字的因子树。 由于这是代码高尔夫球,因此以字节为单位的最短答案会获胜。

5
素数
这没有实际目的,但打高尔夫球可能会很有趣。 挑战 给定数字n, 计算n中每个数字的数量并向每个计数加1 采取的素数分解 n 计算n的素数分解中每个数字的数量,但不包括重复的素数 通过将步骤1和步骤3中列表的各个元素相乘来创建一个新列表 返回该列表的总和 例如,121具有两个1s和a 2,因此您将从步骤1中获得以下列表: 0 1 2 3 4 5 6 7 8 9 1 3 2 1 1 1 1 1 1 1 121的素数分解为11 2,这给出了步骤3的以下列表: 0 1 2 3 4 5 6 7 8 9 0 2 0 0 0 0 0 …

12
列出0000-01-01至99999-12-31之间的所有回文素数日期
您知道回文,素数和日期是什么。 您的任务是列出满足所有三个特征的十万年的所有日期。 除了数字外,别无其他,请使用以下格式:YYYYMMDD和YYYYYMMDD。 0000-01-01和9999-12-31之间的日期应打印为8位回文日期(如果有?),而10000-01-01和99999-12-31之间的日期应打印为9位回文日期。 按时间顺序列出日期不是强制性的。 有效输出的示例部分。 前三个9位数主要回文日期: ... 100111001 100131001 100161001 ... 规则 有标准漏洞。

6
逐位计算指数
您的任务是按照以下步骤缓慢计算幂运算: 给定两个输入(在此示例中为4和8),您必须通过逐位计算方程来计算幂。您会做的4^8,具有更大的基值(4)和较小的指数(8)。您可以使用更多的幂和除法来执行此操作。您可以将指数除以值X(假设X是指数的质数),然后将基值(B)设为B^X。例如,您可以执行以下操作: 4^8 = (4 ^ 2)^(8 / 2) = 16^4 我在前面的方程式中将X替换为2。 您可以16^4再次通过X = 2以下方式进一步“简化” : 16^4 = (16 ^ 2)^(4 / 2) = 256^2 然后最后计算一个数字(再次是X = 2): 256^2 = (256 ^ 2)^(2 / 2) = 65536^1 = 65536 因此, 4^8 = 16^4 = 256^2 = 65536 这是您应该提供的输出。输出分隔符有点灵活,例如,您可以用换行符或空格代替来分隔方程式=。或者,您可以将它们放入列表中(但不能使用数字或^字符作为分隔符)。 正如马丁·恩德(Martin Ender)所指出的那样,^它也很灵活。例如,您可以在输出中使用[A, …

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.