Questions tagged «division»

对于涉及除法或整数除法的数学运算符的挑战

30
将数字除以3,而不使用*,/,+,-,%运算符
在SO上引用此问题(扰流板警报!): 在Oracle采访中已经问过这个问题。 如何在不使用*,/,+,-,%操作符的情况下将数字除以3? 该数字可以签名也可以不签名。 该任务是可解决的,但是请查看是否可以编写最短的代码。 规则: 执行所需的整数除法(/3) 不要使用非基于文本运营商*,/,+,-,或%(或它们的等价物,如__div__或add())。这也适用于递增或递减运算符,例如i++或i--。可以使用运算符进行字符串连接和格式化。也可以将这些字符用于不同的运算符,例如-用于负数的一元运算符,或*在C中表示指针。 输入值可以为正值和负值任意大(系统可以处理的任何值) 输入可以在STDIN或ARGV上,也可以任何其他方式输入 创建最短的代码即可完成以上操作

30
一个数字是多少?
古希腊人把这些东西称为单双偶数。单个偶数的示例是14。它可以被2除以一次,并且在那一刻成为奇数(7),此后不再可以被2整除。双偶数是20。可以将其除以2两次,然后变为5。 您的任务是编写一个函数或程序,该函数或程序将整数作为输入,并输出可被整数整除2的次数,并以尽可能少的字节数输出。输入将为非零整数(在您的语言范围内,任何正值或负值)。 测试用例: 14 -> 1 20 -> 2 94208 -> 12 7 -> 0 -4 -> 2 字节数最少的答案将获胜。 提示:尝试将数字转换为基数2。请参阅提示。

16
可以多小?
以正整数N开头,找到最小的整数N',可以通过将N除以其一位数字(以10为底)来计算得出。每个选定的数字必须是N的除数大于1。 例子1 预期的输出为N = 230是N” = 23: 范例#2 预期的输出为N = 129528是N” = 257: 提防非最佳路径! 我们可以从129528/9 = 14392开始,但这不会导致最小的结果。如果首先除以9,我们可以做的最好的事情是: 规则 输入可以采用任何合理的格式(整数,字符串,数字数组等)。 这是代码高尔夫球,因此最短答案以字节为单位! 测试用例 1 --> 1 7 --> 1 10 --> 10 24 --> 1 230 --> 23 234 --> 78 10800 --> 1 10801 --> 10801 50976 --> 118 129500 --> ...

30
我可以将数字总和除以两倍吗?
给定一个正整数作为输入,如果数字可被其数字总和的两倍整除,则您的任务是输出一个真值,否则将输出一个假值(OEIS A134516)。换一种说法: (sum_of_digits)*2 | number 您可以为真/假情况指定任何有限的值集,而不是为真/假情况的真/假值,并用它们补充其他值。举一个简单的例子,您可以使用0真数字,而所有其他数字用于假数字(如果愿意,反之亦然)。 标准输入和输出规则适用。默认漏洞也适用。 您可以将输入作为整数或该整数的字符串表示形式。 这是代码高尔夫球,因此以字节为单位的最短代码获胜! 我是PPCG的新手,因此,如果可能的话,我希望您发表解释。 测试用例 输入-输出-(原因) 80-真实-(16除以80) 100-真实-(2除以100) 60-真实-(12除以60) 18-Truthy-(18除以18) 12-真实-(6除数12) 4-虚假-(8不除以4) 8-虚假-(16不除8) 16-虚假-(14不除以16) 21-虚假-(6不除21) 78-虚假-(30不除以78) 110-虚假-(4不did 110) 111-虚假-(6不除111) 390-虚假-(24不除以390)

30
可除性测试
任务 给定两个严格的正整数n和d作为输入,请确定n是否可被d 整除,即是否存在整数q使得n = qd。 您可以编写程序或函数,并使用我们的任何标准方法来接收输入和提供输出。 输出应该是真实值或虚假值;如果n可被d整除,则为真;否则为f。 您的代码只需要处理可以本机表示的整数,只要它适用于所有带符号的8位整数即可。但是,您的算法必须适用于任意大整数。 您可以使用任何编程语言,但是请注意,默认情况下,这些漏洞是禁止的。 这是代码高尔夫球,因此以字节为单位的最短有效答案为准。 测试用例 n, d output 1, 1 truthy 2, 1 truthy 6, 3 truthy 17, 17 truthy 22, 2 truthy 1, 2 falsy 2, 3 falsy 2, 4 falsy 3, 9 falsy 15, 16 falsy 排行榜 这篇文章底部的Stack Snippet会根据答案a)生成目录,a)作为每种语言最短解决方案的列表,b)作为整体排行榜。 为确保您的答案显示出来,请使用以下Markdown模板以标题开头。 ## Language ...

30
除法和余数
尽管在大多数“标准”语言中可能是微不足道的,但这一挑战是针对那些在本网站上很少见到的深奥,低级和/或难以使用的语言。它应该提供一个有趣的问题来解决,因此这是您尝试阅读的奇怪语言的机会! 任务 取两个自然数a和b作为输入,和其它输出两个数字:整数除法的结果a/b,并且这种除法的余数(a%b)。 这是代码高尔夫:每种语言的最短答案(以字节为单位)获胜! 输入输出 0 <= a<= 255,1 <= b<= 255。您的每个输入(以及输出)也都适合一个字节。 您可以为输入和输出选择任何喜欢的格式,只要可以清楚地区分两个数字即可(例如,没有定界符就不能同时打印两个结果) 例子 a,b->division,remainder 5,7->0,5 5,1->5,0 18,4->4,2 255,25->10,5 注意:禁止同时返回除法结果和余数的内建函数。至少向我们展示您的语言如何将两个函数应用于相同的参数。 注意2:与往常一样,非常欢迎您对代码的工作方式进行解释,即使您认为它易于阅读,其他人也可能不这么认为! 排行榜 这是一个堆栈片段,用于按语言生成获奖者概览。 为确保您的答案显示出来,请使用以下Markdown模板以标题开头。 # Language Name, N bytes N您提交的文件大小在哪里。如果您提高了分数,则可以通过打败旧分数来保持标题。例如: # Ruby, <s>104</s> <s>101</s> 96 bytes 如果要在标头中包含多个数字(例如,因为您的分数是两个文件的总和,或者您想单独列出解释器标志罚分),请确保实际分数是标头中的最后一个数字: # Perl, 43 + 2 (-p flag) = 45 bytes 您还可以将语言名称设置为链接,然后该链接将显示在页首横幅代码段中: # [><>](http://esolangs.org/wiki/Fish), ...

29
它是前缀代码吗?
在信息论中,“前缀代码”是一个字典,其中所有键都不是另一个的前缀。换句话说,这意味着没有一个字符串以其他任何字符串开头。 例如,{"9", "55"}是前缀代码,但{"5", "9", "55"}不是。 这样做的最大优点是,可以将编码的文本记下来,并且它们之间没有分隔符,并且仍然可以唯一地解密。这在诸如Huffman编码之类的压缩算法中得到了体现,该算法始终会生成最佳的前缀代码。 您的任务很简单:给定一个字符串列表,确定它是否是有效的前缀代码。 您的输入: 将是任何合理格式的字符串列表。 仅包含可打印的ASCII字符串。 将不包含任何空字符串。 您的输出将是一个true / falsey值:如果是有效的前缀代码,则为True,否则为falsey。 这是一些真实的测试用例: ["Hello", "World"] ["Code", "Golf", "Is", "Cool"] ["1", "2", "3", "4", "5"] ["This", "test", "case", "is", "true"] ["111", "010", "000", "1101", "1010", "1000", "0111", "0010", "1011", "0110", "11001", "00110", "10011", "11000", "00111", "10010"] 以下是一些错误的测试案例: ["4", "42"] ...

30
可分割条纹
我们可以定义整除条纹k一批n通过寻找最小的非负整数,k这样n+k是不是整除k+1。 挑战 用您选择的语言编写输出或返回输入的可分割条纹的程序或函数。 例子: n=13: 13 is divisible by 1 14 is divisible by 2 15 is divisible by 3 16 is divisible by 4 17 is not divisible by 5 的多样性条纹13为4 n=120: 120 is divisible by 1 121 is not divisible by 2 的多样性条纹120为1 测试用例: n DS 2 1 ...

6
你今年过得好吗?
介绍 圣诞老人的名字太多了,需要您的帮助!他需要你写一个程序或功能,它输出nice,naughty,very naughty或very very naughty。为了确定某人的好坏或顽皮,圣诞老人开发了一种算法: 尼斯(除法,数学): 首先,通过将所有字母加起来(忽略空格)从名称中获得一个数字。例如: Doorknob = D = 4 o = 15 o = 15 r = 18 k = 11 n = 14 o = 15 b = 2 4 + 15 + 15 + 18 + 11 + 14 + 15 + 2 = 94 ...

6
救命!我的计算器出现故障!
介绍 我的计算器很奇怪。有时,当我输入时8会显示2。有时,当我输入a 6时会显示+。一些按钮混在一起! 谁能帮我确定哪个? 挑战: 输入:错误方程式列表,结果正确。 输出:交换的两个按钮。 例如: 输入可以是: 123 = 3 8423 = 252 4+4 = 8 4*7-10 = 417 9/3 = 3 42-9 = -36 其预期的输出是:2和*。 为什么?因为如果我们交换2和*,则所有等式都是正确的: 1*3 = 3 84*3 = 252 4+4 = 8 427-10 = 417 9/3 = 3 4*-9 = -36 挑战规则: 输入可以采用任何合理的格式。可以是一个以空格分隔的字符串;字符串列表或-array; 一个包含方程式的列表和另一个包含正确结果的列表。你的来电。请说明您使用的输入格式! ...
28 code-golf  number  arithmetic  integer  code-golf  math  number  geometry  code-golf  grid  code-golf  math  number  sequence  primes  code-golf  sequence  kolmogorov-complexity  code-golf  string  ascii-art  alphabet  code-golf  math  sequence  integer  code-golf  number-theory  integer  natural-language  code-golf  date  code-golf  function  code-golf  ascii-art  code-golf  math  number-theory  primes  classification  code-golf  array-manipulation  decision-problem  matrix  code-golf  number  code-golf  code-golf  ascii-art  matrix  code-golf  string  code-golf  sequence  base-conversion  code-golf  code-golf  math  number-theory  combinatorics  integer-partitions  code-golf  integer  binary  base-conversion  code-golf  integer  base-conversion  palindrome  code-golf  code-golf  integer-partitions  code-golf  math  ascii-art  matrix  code-golf  number  sequence  number-theory  matrix  code-golf  interpreter  code-golf  graph-theory  code-golf  ascii-art  decision-problem  code-golf  division  code-golf  array-manipulation  primes  code-golf  string  ascii-art  code-golf  primes  counting  code-golf  matrix  unicode  code-golf  source-layout  code-golf  grammars  code-golf  string  cops-and-robbers  regular-expression  obfuscation  string  code-challenge  cops-and-robbers  regular-expression  code-golf  kolmogorov-complexity  game  card-games  code-golf  kolmogorov-complexity  code-golf  array-manipulation  matrix  code-challenge  cops-and-robbers  code-challenge  decision-problem  cops-and-robbers  code-golf  permutations 

30
模总和
我将此序列称为“耶稣序列”,因为它是mod的总和。</ pun> 对于这个序列,你把所有的正整数中号小于输入ñ,走的总和ñ模每米。换一种说法: an=∑m=1n−1nmodman=∑m=1n−1nmodma_n = \sum_{m=1}^{n-1}{n\bmod m} For example, take the term 14: 14 % 1 = 0 14 % 2 = 0 14 % 3 = 2 14 % 4 = 2 14 % 5 = 4 14 % 6 = 2 14 % 7 = 0 14 % ...

18
我是“重新预订”号码吗?
Redivosite是一个portmanteau单词,仅是本次挑战的目的。它是归约,除法和复合的混合。 定义 给定整数N> 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
计算一个数的除数
介绍 这是一个非常简单的挑战:只需计算一个数的除数即可。以前我们遇到过类似但更复杂的挑战,但我打算将此作为入门级。 挑战 创建一个程序或函数,给定一个严格的正整数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 ...

23
实施7分频规则
要检查十进制数是否可以被7整除: 删除最后一位。将其乘以2并从剩余的值中减去。如果结果可被7整除,则原始数字可被7整除。 (例如也在此处描述) 此规则适用于手动除数检查。例如: 2016年是否可以被7整除? 减去6*2201;我们得到189。这是否可以被7整除?要检查它,让我们再次应用规则。 减去9*218;我们得到0。因此,2016被7整除。 在此挑战中,您应应用此规则,直到可分割状态明显,即该数字不大于70(但是,请参阅下面的详细信息)。制作功能或完整程序。 输入:正整数;您的代码应支持最多32767的输入(支持任意精度整数是一个加分项;请参见下文)。 输出:不大于70的整数(可能为负数),这是将7除数规则应用零次或更多次的结果。 测试用例: Input Output Alternative output 1 1 10 10 1 100 10 1 13 13 -5 42 42 0 2016 0 9 9 99 -9 9999 -3 12345 3 32767 28 -14 ---------- Values below are only relevant for the ...

6
最近的分数
任务: 您的程序将使用格式正确的,正的简单分数<numerator>/<denominator>。 对于此输入,它必须找到两个分数。 小于输入的分数。 大于输入的分数。 两个分数的分母都必须小于输入的分母。在所有可能的分数中,它们与输入的差异应该最小。 输出: 程序的输出必须为: 小于输入的小数,格式为<numerator>/<denominator>。 后面跟一个空格字符(ASCII码32)。 后跟一个大于输入的小数,格式为<numerator>/<denominator>。 如下: «fraction that is < input» «fraction that is > input» 规则: 输出的所有分数必须使用最低的术语。 输出的所有分数必须是正确的分数。 如果规则没有允许的任何适当分数,则必须输出0而不是分数<输入,而1不是分数>输入。 您可以选择是要接收分数作为命令行参数(例如yourprogram.exe 2/5)还是提示用户输入。 您可能会认为您的程序不会收到无效的输入。 最短的代码(以任何语言表示的字节数)为准。 任何非标准的命令行参数(运行脚本通常不需要的参数)都计入总字符数。 您的程序不得执行的操作: 取决于任何外部资源。 取决于具有特定的文件名。 输出所需输出以外的任何内容。 需要非常长的时间才能运行。如果您的程序在一分钟的179565/987657时间内用普通家庭用户的计算机上的分数用6位数字的分子和分母(例如)运行一分钟,则它无效。 输出分数以0作为分母。你不能被零除。 输出分数0作为分子。您的程序必须输出0而不是小数。 减少输入分数。如果作为输入给出的分数是可约的,则必须使用输入的分数。 发布此挑战之前,不得使用没有公开可用的编译器/解释器的编程语言来编写您的程序。 例子: 输入: 2/5 输出: 1/3 1/2 输入: 1/2 输出: 0 ...

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.