Questions tagged «integer»

对于涉及整数操作的挑战。

13
Seqindignot序列
标题由“ Sequence Index Digit Not”组成。 挑战: 给定的整数n,其是>= 0,输出的n“日数以下序列组成。 以下是前50个项目,其上方是(0索引)索引: 0 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 27 28 29 30 31 32 33 34 35 36 37 38 39 40 …

10
用(几乎)任何您喜欢的数字解方程
给定一串+=-至少包含一个字符的字符串,请=在所有符号之间以及在开头和结尾处插入正整数,以便满足数学方程式。 例如,给定输入 +-=-= 您需要像这样插入正整数A到F A+B-C=D-E=F 这样等式都满足,即A + B - C和D - E和F都是相同的数字。 有许多可能的方法可以执行此操作,因为只要等式成立,就可以使用任何正整数集。这里的每一行都是可能输入的有效输出+-=-=: 2+3-4=6-5=1 1+1-1=2-1=1 4+2-4=4-2=2 100+1-10=182-91=91 89+231-77=1024-781=243 请注意,表达式的值不需要像插入的数字一样为正整数。例如,给定输入-=-的输出1-10=8-17(从eval到-9)和10-1=17-8(从eval到9)都同样有效。当然,对于某些输入(例如,=不可能有负数的表达式),因为只能5=5插入正数之类的。 还要注意,零不是正整数。 以字节为单位的最短代码获胜。 您可以将数字输出为列表,而不是将其直接插入字符串中。如果确实输出字符串,则可能会有空格分隔符号和数字。因此,对于输入+-=-=,输出 2, 3, 4, 6, 5, 1 要么 2 + 3 - 4 = 6 - 5 = 1 相当于输出 2+3-4=6-5=1 测试用例 Input | One Possible Output = | …

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 

30
始终以相同的长度输出
对于诸如Output的长度与代码相同的挑战以及Create output的长度是代码长度的两倍的挑战,我想到了一个单独的但相似的挑战。 任务是产生输出。它可以是字符串,字符列表,也可以是程序的默认输出格式。但是,无论输入如何,您的输出必须始终为相同的长度。更重要的是,对于不同的输入,输出应该是不同的。 输入项 单个整数nnn,其范围由语言选择确定。如果您的语言具有可变长度整数,范围是−231≤n&lt;231−231≤n&lt;231-2^{31} \leq n < 2^{31}。 输出量 字符串或字符列表,或打印到STDOUT或STDERR。您只能使用以下方法之一。无论输入如何,输出都应具有相同的长度,但是由您决定是哪个长度。输出中可能不包含数字字符0-9或减号-。输出应该是确定性的。 您应该能够通过形式证明,自变量或蛮力搜索来证明每个输出只有一个可能的输入。 这是一个代码问题,因此请删除所有多余的字节。欢迎所有语言,越多越好!

22
数字三角形
挑战: 输入:正整数nnn 输出: 在[1,n][1,n][1,n]范围内创建一个列表,并将其连接到一个字符串(即n=13n=13n=13将是字符串12345678910111213)。 现在,根据输入整数,使用以下字符串的四个方向之一,使用此字符串的前缀或后缀输出三角形: 如果,将其输出为三角形◣n≡0(mod4)n≡0(mod4)n\equiv 0\pmod 4 如果,将其输出为三角形◤n≡1(mod4)n≡1(mod4)n\equiv 1\pmod 4 如果,将其输出为三角形◥n≡2(mod4)n≡2(mod4)n\equiv 2\pmod 4 如果,将其输出为三角形◢n≡3(mod4)n≡3(mod4)n\equiv 3\pmod 4 例: 输入:n=13n=13n=13 因为,所以形状为◤。这里是三个可能的有效输出:13≡1(mod4)13≡1(mod4)13\equiv 1\pmod 4 12345678910111213 11111111111111111 12345678910111213 1234567891011121 2222222222222222 2345678910111213 123456789101112 333333333333333 345678910111213 12345678910111 44444444444444 45678910111213 1234567891011 5555555555555 5678910111213 123456789101 666666666666 678910111213 12345678910 77777777777 78910111213 1234567891 8888888888 8910111213 123456789 999999999 910111213 12345678 …

18
使它们总计为10,000
最近,我们在PPCG上已达到10,000个问题的门槛。万岁!让我们用一个简单的挑战来庆祝这一点。 输入项 两个整数和都在,因此。一种AA乙BB[ 1..9999 ][1..9999][1..9999]A + B &lt; 10000A+B&lt;10000A+B<10000 任务 您的任务是将一个数字加到这些整数之一,或者将一个数字加到两个整数,使得。如果将数字添加到和,则不必一定是相同的数字。A + B = 10000A+B=10000A+B=10000一种AA乙BB 可以在原始整数的开头,结尾或中间的任意位置添加新数字。但是,您不能添加前导零。 例: 对于,以下转换有效:A = 923A=923A=923 1 92392 7 3923 8192392739238\color{red}1923\\92\color{red}73\\923\color{red}8 但是这些是无效的: 0 92310 9239 4 2 7 309231092394273\color{red}{0}923\\\color{red}{10}923\\9\color{red}{4}2\color{red}{7}3 给定和,有两种可能的解决方案:A=923A=923A=923B=72B=72B=72 9238+762=100009273+727=100009238+762=100009273+727=10000923\color{red}8 + 7\color{red}62 = 10000\\92\color{red}73 + 72\color{red}7 = 10000 输出量 您必须打印或输出所有可能解决方案的列表。 对于上述示例,预期输出为[[9238,762],[9273,727]]。 规则 I / O可以以任何合理,明确的格式进行处理。您可以使用字符串,数字列表等代替整数。 …

30
非零数字产品挑战
最初是乘法数字根 挑战 基本上按照标题说 方法 通过我们的一种标准输入法,给定正整数 1 &lt;= N &lt;= 100000000,将每个数字相乘,而忽略零。 例如:拿一个数字,说361218402: 3* 6=18 18* 1=18 18* 2=36 36* 1=36 36* 8=288 288* 4=1152 1152* 1 (忽略零或将它们变成1) =1152 1152* 2=2304 的输出361218402是2304 测试用例 1 =&gt; 1 其他数字&gt; 0 =&gt;本身 10 =&gt; 1 20 =&gt; 2 100 =&gt; 1 999 =&gt; 729 21333 …

18
我是“重新预订”号码吗?
Redivosite是一个portmanteau单词,仅是本次挑战的目的。它是归约,除法和复合的混合。 定义 给定整数N&gt; 6: 如果N为质数,则N不是重新定义的数字。 如果N是复合的: 重复计算N'= N / d + d + 1直到N'为素数,其中d是N大于1 的最小除数 Ñ是Redivosite数当且仅当的最终值N”是的除数Ñ 下面是100个第一个Redivosite编号(发布时没有OEIS条目): 14,42,44,49,66,70,143,153,168,169,176,195,204,260,287,294,322,350,414,462,518,553,572,575,592,629,651,702,726,735,775,806,850,869,889,891,913,950,1014,1023,1027,1071,1118,1173,1177,1197,1221,1235,1254,1260,1302,1364,1403,1430,1441,1554,1598,1610,1615,1628,1650,1673,1683,1687,1690,1703,1710,1736,1771,1840,1957,1974,2046,2067,2139,2196,2231,2254,2257,2288,2310,2318,2353,2392,2409,2432,2480,2522,2544,2635,2640,2650,2652,2684,2717,2758,2760,2784,2822,2835 例子 N = 13:13是质数,因此13不是Redivosite数字 N = 32:32/2 + 3 = 19;19不是除数或32,因此32不是Redivosite数字 N = 260:260/2 + 3 = 133,133 / 7 + 8 = 27,27 / 3 + 4 = 13;13是除数或260,因此260是Redivosite数字 你的任务 给定整数N,如果它是Redivosite …

30
以90度输出小时
今天,当我和孩子们玩耍时,我注意到公园里一个看似简单的玩具隐藏了一个挑战。 砂轮有一个三角形,指向一个数字,但也有三个圆,它们指向与第一个数字成90度角的数字。所以: 挑战(真的很简单) 给定任意可接受形式的1到12之间的一个整数(三角形所指向的那个),也可以按照可接受的形式输出并按圆圈所指示的三个数字(每90度对一个数字)进行排序。 测试用例 In Out 1 4, 7, 10 2 5, 8, 11 3 6, 9, 12 4 7, 10, 1 5 8, 11, 2 6 9, 12, 3 7 10, 1, 4 8 11, 2, 5 9 12, 3, 6 10 1, 4, 7 11 2, 5, …

30
是整数吗?
一个数字是整体如果是不带小数部分的非负整数。所以0and 8和233494.0是整体,而1.1and 0.001和233494.999不是。 输入项 语言的默认基本/编码形式的浮点数。 例如,二元Lambda演算的默认整数表示形式是教堂数字。但是Python的默认整数表示形式是以10为基数的十进制,而不是Unary。 输出量 甲truthy如果输入是全值,falsy值,如果它不是。 请注意,如果您的语言仅支持十进制精度(例如8位),1.000000002则可以视为整数。 输入和输出可以通过任何标准的I / O方法完成。 测试用例 Input -&gt; Output 332 -&gt; true 33.2 -&gt; false 128239847 -&gt; true 0.128239847 -&gt; false 0 -&gt; true 0.000000000 -&gt; true 1.111111111 -&gt; false -3.1415926 -&gt; false -3 -&gt; false 计分 与代码高尔夫球一样,最短的提交将获胜。祝好运!

30
我的号码多久?
挑战 给定一个整数,Q范围为-(2^100) ≤ Q ≤ 2^100,输出该数字的位数(以10为底)。 规则 是的,您可以将数字作为字符串并找到其长度。 允许所有数学函数。 您可以使用任何底数作为输入,但是输出必须是以10为底的数字的长度。 不要将负号计为负数。该数字永远不会有小数点。 零可以是一位或零位。 假设输入将始终是有效整数。 例子 Input &gt; Output -45 &gt; 2 12548026 &gt; 8 33107638153846291829 &gt; 20 -20000 &gt; 5 0 &gt; 1 or 0 获奖 以字节为单位的最短代码获胜。

11
这个数字的精确度是-2 :(非常)硬模式
这是最近挑战的一个版本,这个数字是2的整数次幂吗?具有一系列不同的标准,这些标准旨在突出问题的有趣性质并使挑战更加艰巨。我在这里考虑了一下。 托比在链接的问题中很好地说明了这一挑战: 有很多聪明的方法可以确定整数是否为2的精确幂。这不再是一个有趣的问题,因此让我们确定给定的整数是否为-2的精确幂。例如: -2 =&gt; yes: (-2)¹ -1 =&gt; no 0 =&gt; no 1 =&gt; yes: (-2)⁰ 2 =&gt; no 3 =&gt; no 4 =&gt; yes: (-2)² 规则: 整数是64位带符号的二进制补码。这是您可以使用的唯一数据类型。 您只能使用以下操作。这些都算作一项操作。 n &lt;&lt; k,n &gt;&gt; k:左/右移位n通过k比特。符号位右移扩展。 n &gt;&gt;&gt; k:右移,但不扩展符号位。0移入。 a &amp; b,a | b,a ^ b:按位AND,OR,XOR。 a + b,a - b,a …

25
鸽子洞原理和代码高尔夫
该鸽巢原理指出, 如果将N个项目放入M盒中,且N &gt; M,则至少一个盒子必须包含一个以上的项目。 对于许多人来说,与其他数学运算相比,该原理具有特殊的地位。正如EW Dijkstra 写道, 它被一些神秘感所包围。使用它的证明通常被认为是特殊的东西,特别是巧妙的东西。 挑战 这项挑战的目的是使用ASCII艺术表示法来说明鸽洞原理。特别: 以输入N(项目数)和M(框数)N为正和非负M。N可能小于M(即使该原则在这种情况下不适用)。 随机选择可能的项目分配到框之一。每个分配都应具有非零的被选概率。 生成分配的ASCII艺术作品表示,如下所示: 有几M行,每行对应一个框。 每行以非空白字符开头,例如|。 在该字符之后是另一个非空白字符,例如#,与该框中的项目重复的次数很多。 例如考虑N = 8,M = 5。如果项盒中的所选赋值是4,1,0,3,0,表示是 |#### |# | |### | 相同程序的不同运行(导致不同的分配)可能会导致 |# |## |# |# |### 表示有一些灵活性;见下文。 具体规则 该代码应理论上任何值运行的N和M。实际上,它可能受内存大小或数据类型限制的限制。 由于观察输出不足以确定所有赋值是否具有非零概率,因此每个提交都应说明代码如何实现(如果不是很明显)。 允许以下表示形式的变化: 可以选择任何一对不同的非空白字符。它们在程序执行之间必须保持一致。 表示形式可以旋转90度。同样,选择必须是一致的。 允许尾随空格或前导空格。 以具有不同表示形式的示例为例,对于N = 15,M = 6该程序两次执行的结果可能是 VVVVVV @@@@@@ @@ @@@ @ …

11
防位翻转复合数字
有时,在编写程序时,出于某种原因(例如,密码学),您需要使用质数。我认为有时您也需要使用一个复合数字。有时,至少在PPCG上,您的程序必须能够处理任意更改。而且在方便地提出一个有趣的PPCG问题的情况下,也许甚至您使用的数字也必须能够抵御腐败…… 定义 甲合数是一个整数≥4不是素数,即它是两个较小的整数大于1更大的产物抗性bitflip复合数被定义如下:它是其中复合正整数,如果你把它写如果是二进制格式,则位数应尽可能少,您可以更改该位数中的任何一位或两位,并且该数字仍然是合成的。 例 例如,考虑数字84。在二进制中,即1010100。以下是所有相差不超过2位的数字: 0000100 4 2×2 0010000 16 4×4 0010100 20 4×5 0010101 21 3×7 0010110 22 2×11 0011100 28 4×7 0110100 52 4×13 1000000 64 8×8 1000100 68 4×17 1000101 69 3×23 1000110 70 7×10 1001100 76 4×19 1010000 80 8×10 1010001 81 9×9 1010010 82 2×41 …

26
整数的数字硬度
要找到整数的数字硬度,请使用二进制表示形式,并计算可以删除前导和尾随的次数,1直到它以a开头或结尾为止0。去除的总位数是其数字硬度。 这是一个冗长的解释-因此,让我们用一个可行的例子来分解它。 在此示例中,我们将使用数字3167。在二进制文件中,这是: 110001011111 (请注意,在转换为二进制文件的过程中,应确保去除前导零) 它不是以开头或结尾0,因此我们删除了1对位: 1 1000101111 1 还有一个: 11 00010111 11 但是现在开始时有一个0,所以我们不能再删除1对了。总共4个比特我们除去,所以4是数字硬度3167。 但是,对于可以写为2 n -1表示正n的数字(即仅包含1二进制表示形式),永远不会达到0,因此可以删除所有位。这意味着硬度只是整数的位长。 挑战 您的任务是编写一个程序或函数,给定一个非负整数n &gt;= 0,该程序或函数将确定其数字硬度。 您可以提交执行I / O的完整程序,或提交返回结果的功能。您的提交应适用n于您的语言的标准整数范围内的值。 测试用例 如果其中任何一个不正确,或者您想建议添加任何极端情况,请通知我。 0 -&gt; 0 1 -&gt; 1 8 -&gt; 0 23 -&gt; 2 31 -&gt; 5 103 -&gt; 4 127 -&gt; 7 1877 -&gt; 2 …

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.