Questions tagged «integer»

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

18
排序矩形矩阵
给定一个矩阵A,我们可以说,如果矩阵的每一行和每一列都A被排序(对行从左到右,对列从上到下,则是“已排序” )。因此,该矩阵被排序: [ 1 2 3 4 5 ] [ 2 2 3 4 5 ] [ 3 3 3 4 5 ] [ 4 4 4 4 5 ] [ 5 5 5 5 5 ] 但是,此矩阵未排序: [ 1 2 3 4 5 ] [ 2 1 3 4 …

8
整数三角形和整数中位数
考虑一个三角形ABC,其中每边的长度均为整数(整数三角形)。限定一个中位的ABC是从一个顶点到相对的边的中点的线段。在下图中,红线段代表中位数。请注意,任何给定的三角形都有三个中值。 令n为某个正整数。多少个边长小于或等于n的非退化整数三角形至少有一个整数中位数? 挑战 编写一个程序,以计算给定最大边长n时具有至少一个整数中位数的整数三角形的数量。边长的顺序无关紧要,即<6,6,5>表示与<5,6,6>相同的三角形,并且应仅计数一次。排除退化的三角形,例如<1,2,3>。 计分 您的程序可以在您的机器上在60秒内为您的程序生成最大三角形数的n。得分最高的程序将获胜。我的机器是Sony Vaio SVF14A16CLB,Intel Core i5、8GB RAM。 例子 令T(N)为输入N的程序。 T(1) = 0 T(6) = 1 T(20) = 27 T(22) = 34 请注意,T(1)= T(2)= T(3)= T(4)= T(5)= 0,因为没有积分边的组合会产生积分中位数。但是,一旦达到6,我们可以看到三角形<5,5,6>的中位数之一为4,因此T(6)= 1。 还要注意,T(22)是出现重复计数的第一个值:三角形<16,18,22>的中位数为13和17(以及2sqrt(85))。 计算中位数 三角形的中位数可以通过以下公式计算: Current top score: Sp3000 - 7000 points - C

5
二进制卷积
二进制卷积由数字描述M,并应用于数字N。对于的二进制表示形式中的每个位M,如果将该位设置为(1),则通过将与相应位中的相应位相邻的两个位进行XOR N(在必要时进行环绕)来给出输出中的相应位。如果未设置该位(0),则输出中的相应位由中的相应位给出N。 一个有效的示例(具有8位值): 让N = 150,M = 59。它们的二进制表示形式分别为10010110和00111011。 根据M的二进制表示形式,卷积0、1、3、4和5。 位0的结果由对位1和7进行XOR运算得出(因为我们进行了环绕),得出1。 位1的结果由位0和2的XOR运算得出0。 位2的结果由原始位2给出,即1。 第3位的结果由第2位和第4位的XOR运算得出0。 位4的结果由位3和5的XOR运算得出0。 第5位的结果由第4位和第6位的XOR运算得出1。 位6和7的结果由原始位6和7给出,得出0和1。 因此,输出为10100110(166)。 挑战 给定N和M,输出执行Mon上描述的二进制卷积的结果N。输入和输出可以采用任何方便,一致且明确的格式。N并且M将始终在(包括)范围内[0, 255](8位无符号整数),并且应将其二进制表示形式填充为8位以执行二进制卷积。 测试用例 150 59 -> 166 242 209 -> 178 1 17 -> 0 189 139 -> 181 215 104 -> 215 79 214 -> 25 190 207 -> 50 61 …
15 code-golf  binary  integer  bitwise  code-golf  rational-numbers  code-golf  string  palindrome  code-golf  ascii-art  code-golf  code-golf  string  fibonacci  code-golf  math  sequence  code-golf  code-golf  string  palindrome  code-golf  string  code-golf  math  primes  source-layout  code-golf  sequence  binary  integer  code-golf  math  arithmetic  game  code-golf  restricted-source  palindrome  code-golf  restricted-source  palindrome  code-golf  combinatorics  binary  code-golf  string  math  code-golf  ascii-art  number  code-golf  cipher  code-golf  base-conversion  counting  code-golf  sequence  random  classification  code-golf  string  subsequence  code-golf  permutations  code-golf  string  code-golf  string  cipher  code-golf  kolmogorov-complexity  arithmetic  integer  code-golf  quine  markov-chain  code-golf  string  code-golf  code-golf  ascii-art  maze 

11
源排列
集合S = { s 1,s 2,… ,s n }的置换是一个双射函数π :S → S。例如,如果小号= { 1 ,2 ,3 ,4 }那么函数小号= { s1个,秒2,… ,sñ}小号={s1个,s2,…,sñ}S = \{s_1, s_2, \dotsc, s_n\}π:S→ Sπ:小号→小号\pi: S \to S小号= { 1 ,2 ,3 ,4 }小号={1个,2,3,4}S = \{1,2,3,4\}π:x↦1+(x+1mod4)π:x↦1+(x+1mod4)\pi: x \mapsto 1 + (x + 1 \mod 4)是一个置换: π(1)=3,π(2)=4,π(3)=1,π(4)=2π(1个)=3,π(2)=4,π(3)=1个,π(4)=2 \pi(1) = …

15
算术和中缺少数字
挑战 给定一个有效的算术和,并包含一些缺失的数字,输出完整的表达式。 例: 1#3 123 + 45# => + 456 -------- -------- 579 579 输入值 表达式格式可以是数组["1#3", "45#", "579"],字符串"1#3+45#=579"或3个输入f("1#3","45#","579") 输出量 与输入相同 您不需要输出结果 笔记 缺失的数字将使用#或您想要的任何其他恒定非数字字符表示 假设结果不会缺少数字 假设输入/输出包含2个项和一个最终结果 假设两项> 0且结果> = 2 可能有多种解决方案。您可以输出任何人,只要总和结果匹配 具有可能的输出的测试用例(漂亮的格式) #79 879 + 44# => + 444 -------- -------- 1323 1323 5#5 555 + 3#3 => + 343 -------- …

9
查找本地最大和最小值
定义 给定函数的最大值和最小值是在给定范围内或在函数的整个域内的函数的最大值和最小值。 挑战 面临的挑战是使用任何您喜欢的方法来找到给定多项式函数的局部最大值和最小值。不用担心,我会尽力解释这一挑战,并使其尽可能简单。 输入将按幂的降序或升序(由您决定)包含单个变量多项式的所有系数。例如, [3,-7,1] 将代表 3x2 - 7x + 1 = 0 [4,0,0,-3] 将代表 4x3-3=0. 如何解决(使用导数)? 现在,假设我们的输入是[1,-12,45,8],但仅是函数。x3 - 12x2 + 45x + 8 第一项任务是找到该函数的导数。由于它是多项式函数,因此确实是一项简单的任务。 的导数是。存在的任何常数项都将简单地相乘。同样,如果有添加/减去的项,则它们的导数也要分别添加或减去。请记住,任何恒定数值的导数均为零。这里有一些例子:xnn*xn-1xn x3 -> 3x2 9x4 -> 9*4*x3 = 36x3 -5x2 -> -5*2*x = - 10x 2x3 - 3x2 + 7x -> 6x2 - 6x …

4
沙漏的底部
挑战: 输入:三个整数:底边长度;沙粒的起始量;指数 输出:根据给定的底边长度和沙粒量,以给定的索引输出沙漏底部的状态。 挑战规则: 我们用数字1-9模拟沙粒 我们将当前剩余的沙粒数量放在中间的顶部,然后在您选择的单个字符之后(不包括数字,空格和换行符;即-),将其放在下面的行中 沙漏填充时,我们每行填充一次,一次填充一位 当沙子可以向左或向右移动时,我们总是向右移动(对于平衡沙漏上方沙粒的剩余量也是如此) 当我们到达9点时,它已经装满了,我们再也无法在沙漏中的那个特定位置放沙子了 剩下的沙粒数量也总是正确对齐 一旦沙漏的下半部分完全填满,或者剩下的沙粒数量达到0,我们就无法进行进一步操作,这将是此点之后所有索引的输出 允许使用0索引或1索引,请指定您在答案中使用的内容。 尾随和前导空格以及一条尾随或前导新行是可选的 如果您选择显示沙漏,则可以使用其他任何字符(而不是零)来填充沙漏底部的空白区域(不包括数字,换行符或用作颈部的字符)。 底边长度将始终为奇数 底边长度将为>= 3; 和沙粒的数量>= 0 如果需要,还可以打印所有状态,直到并包括给定索引 您可以假设(0索引)索引永远不会大于沙粒的总量(因此,当有100粒沙粒时,索引100是最大的有效索引输入)。 第一个索引(0表示0索引; 1表示1索引)将输出一个空的沙漏,上面带有一些沙粒。 示例:图片(或ascii-art)说了一千多个单词,所以这里有一个示例: 输入底边长度:5 输入沙粒数量:100 在这里显示所有步骤,而不是当前索引: 输出具有底边长度5和沙粒量的所有可能指标100: 100 - 0 000 00000 99 - 0 000 00100 98 - 0 000 00110 97 - 0 000 01110 96 - …

11
子集总和的N位变化
对于我正在编写的另一个挑战,我需要验证测试用例是否可以用有界整数解决。具体来说,对于整数A和整数位宽度的非空数组,我需要验证以下内容n: 中的所有整数a都A满足-2**(n-1) <= a < 2**(n-1)(用n-bit二进制数的补码整数表示)。 的长度A小于2**n。 A满足的总和-2**(n-1) <= sum(A) < 2**(n-1)。 元素的所有组合均A满足所有上述条件。 自然,我决定将这个问题外包给您! 给定一个整数数组A和一个正整数位宽度n,请验证是否A满足上述条件。 测试用例 [0, 0, 0], 2: True [0, 0, 0, 0], 2: False (violates #2) [1, 2, 3, 4, 5], 8: True [1, 2, 3, 4, 5], 2: False (violates all conditions) [1, 2, 3, 4, …

30
2因素分解
给定一个自然数,n编写一个程序或函数,以获取可用于实现的所有可能的两个因子乘法的列表n。为了更好的理解,你可以去什么假装http://factornumber.com/?page=16777216看的时候n是16777216我们得到如下列表: 2 × 8388608 4 × 4194304 8 × 2097152 16 × 1048576 32 × 524288 64 × 262144 128 × 131072 256 × 65536 512 × 32768 1024 × 16384 2048 × 8192 4096 × 4096 无需在这里打印漂亮的东西。要求是每个条目(一对因素)之间必须很好地区分,并且在每个对内部,第一个因素也必须彼此很好地区分。如果选择返回列表/数组,则内部元素可以是具有两个元素的列表/数组,也可以是支持C ++之类的东西的某种语言结构std::pair。 不要打印乘以1的乘积,也不要重复将第一个因数换成第二个因数的项,因为它们几乎没有用。 没有赢家;这将是每个语言的高尔夫代码。

14
递归级联[N]的累积和与M次迭代
取两个正整数N,M并[N]通过M迭代创建的串联累积和。输出最后一次迭代的结果。 串联累积和的定义: 以数字开头N并定义顺序X = [N] 追加到X的累积和X 重复步骤2 M次。 向量的累加和X = [x1, x2, x3, x4]为:[x1, x1+x2, x1+x2+x3, x1+x2+x3+x4]。 N = 1和的示例M = 4: P =累积和函数。 M = 0: [1] M = 1: [1, 1] - X = [1, P(1)] = [[1], [1]] M = 2: [1, 1, 1, 2] - X …
14 code-golf  number  sequence  code-golf  number  sequence  code-golf  binary-matrix  code-golf  math  tips  javascript  algorithm  code-golf  string  code-golf  number  sequence  code-golf  math  arithmetic  parsing  code-golf  number  sequence  primes  code-golf  string  ascii-art  geometry  integer  code-golf  geometry  code-golf  number  array-manipulation  code-golf  math  geometry  code-golf  number  sequence  arithmetic  integer  code-golf  string  kolmogorov-complexity  code-golf  number  code-golf  number  chess  code-golf  sequence  decision-problem  subsequence  code-golf  math  number  primes  code-golf  primes  permutations  code-golf  integer  probability-theory  statistics  code-golf  string  code-golf  sequence  decision-problem  parsing  board-game  code-golf  binary  graph-theory  code-golf  board-game  classification  tic-tac-toe  code-golf  ascii-art  polyglot  code-golf  date  code-golf  geometry 

30
多少个素数?
表示自然数的一种方法是乘以质数的指数。例如,6可以由2 ^ 1 * 3 ^ 1表示,而50可以由2 ^ 1 * 5 ^ 2表示(其中^表示指数)。与其他方法相比,此表示形式中的质数可以帮助确定使用这种表示方法是否更短。但是因为我不想手工计算这些,所以我需要一个程序为我做这些。但是,由于在回家之前我必须记住该程序,因此它必须尽可能短。 你的任务: 编写程序或函数以确定该数字表示形式中有多少个不同的质数。 输入: 通过任何常规方法获取的整数n,使得1 <n <10 ^ 12。 输出: 引言中概述了表示输入所需的不同素数的数量。 测试用例: 24 -> 2 (2^3*3^1) 126 -> 3 (2^1*3^2*7^1) 1538493 -> 4 (3^1*11^1*23^1*2027^1) 123456 -> 3 (2^6*3^1*643^1) 这是OEIS A001221。 得分: 这是代码高尔夫球,最低得分(以字节为单位)获胜!

27
泛指倍增
灵感来自这个 CMC 给定一个大于0的正整数,对其执行以下操作: 如果所有十个数字(1234567890)都至少有一次,输出计数并退出程序 否则,将数字加倍并重复,增加计数。 计数从0开始,是输入加倍的次数。例如,如果输入为617283945,则需要将其加倍一次,因为1234567890中包含所有10位数字。 这是一个代码高尔夫球,因此最短的代码获胜。如果需要,可以将输入作为字符串。 测试用例 input => output 617283945 => 1 2 => 67 66833 => 44 1234567890 => 0 100 => 51 42 => 55

11
案例匹配查找替换
以三个输入,文本串T; 一串要替换的字符F;以及用替换它们的字符串R。对于每个T具有相同(不区分大小写)字符的子字符串F,请将其替换为中的字符R。但是,请保持与原始文本相同的大小写。 如果输入的字符R多于个F,则多余的字符应与输入的大小写相同R。如果其中包含数字或符号F,则其中的相应字符R应保持其大小写R。F不一定会出现在中T。 您可以假设所有文本都在可打印的ASCII范围内。 例子 "Text input", "text", "test" -> "Test input" "tHiS Is a PiEcE oF tExT", "is", "abcde" -> "tHaBcde Abcde a PiEcE oF tExT" "The birch canoe slid on the smooth planks", "o", " OH MY " -> "The birch can OH MY e slid OH MY …
14 code-golf  string  code-golf  string  ascii-art  alphabet  code-golf  number  sequence  counting  code-golf  sequence  counting  code-golf  quine  source-layout  code-golf  string  code-golf  decision-problem  game  code-golf  string  quine  source-layout  subsequence  code-golf  quine  code-golf  array-manipulation  integer  code-golf  ascii-art  code-golf  sequence  integer  code-golf  kolmogorov-complexity  code-golf  array-manipulation  integer  code-golf  number  array-manipulation  integer  code-golf  string  number  integer  code-golf  string  ascii-art  code-challenge  test-battery  expression-building  source-layout  printable-ascii  code-bowling  code-golf  number  code-golf  number  string  binary  code-golf  matrix  conversion  code-golf  number  arithmetic 

12
前置,追加序列
任务 prepend,append-Sequence像这样递归定义 a(1)= 1 如果n是偶数,则a(n)= a(n-1).n 如果n为奇数,则a(n)= na(n-1) 哪里。表示整数串联。 因此,前几个术语是:1,12,312,3124,53124,531246,7531246,...这是A053064。 您的任务是,给定a> 0的整数以返回n,以使prenend,append-Sequence中的第n个元素等于a,如果不存在n则返回0,负数或错误输出等。 规则 输入可以作为整数,字符串,字符/数字列表等。 输出可以打印到STDOUT或返回(整数,字符串等都可以) 在输入无效的情况下,如果不存在这样的n,则您的程序可以执行任何操作,但返回正整数(例如,永远循环,返回0等)。 您可以选择使用0索引,但是如果不存在n,则输出不能为0 测试用例 1 -> 1 12 -> 2 21 -> 0 123 -> 0 312 -> 3 213 -> 0 211917151311975312468101214161820 -> 21 2119171513119753102468101214161820 -> 0 333129272523211917151311975312468101214161820222426283031 -> 0 999795939189878583817977757371696765636159575553514947454341393735333129272523211917151311975312468101214161820222426283032343638404244464850525456586062646668707274767880828486889092949698100 -> 100

1
将图片变成拼图
摘要 这项挑战的目标是创建一个15拼图 / 滑动拼图(在法语中也称为taquin)的未还原图像版本。 细节: 给定一个输入,该输入包括: 一个图像, 的整数n, 的其它整数r, 您的程序,函数或任何其他适合的东西,都必须输出与输入相同的图像(即,相同的大小和格式),但是必须经过以下过程: 将图像分成n²矩形, 随机删除其中一个矩形, 从受点(2.)影响的线/列中移动任意数量的连续矩形,以便填充创建的孔,并在该线/列中生成另一个。0如果毛坯在角落或边缘,则此数字可以是。 重复(3.)r次。 说明: 如果您在第(3.)步中从行中移动了矩形,则必须在下一个重复中从列中移动矩形, 如果您在一行中从左到右移动矩形,则必须在下一行中将它们从右到左移动,这与列的上下到上下以及从下到上相同, 您可能会假设n会选择该选项,因此它将划分图片两边的长度。 最后一点: 动画.gif演示整个过程非常受欢迎。 我建议使用下面的图片(是1024x768),将n=16和r=100用作模型,您可以使用任何其他图片(只要它是相关的并且符合SE的规则)。 请注意,适用标准漏洞政策。 这是代码高尔夫球,因此较短的提交将获胜! 由于请求了一个示例,因此这里有一个“手工制作”的示例,其中包含n=4和r=1 步骤1和2 步骤3:逐行,向左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.