Questions tagged «arithmetic»

与基本算术有关的挑战。

18
如何轻松减肥?
在这个问题上,尽管减肥的方法仍然很多,但我们只会专注于通过运动来减肥。 不同的运动会消耗不同量的卡路里。 例如,打台球一个小时可以燃烧102卡路里[1],而打篮球15分钟可以燃烧119卡路里[1],至少从某些角度来看,这使打篮球更容易减轻体重。 衡量舒适度的确切方法是将燃烧的卡路里量除以所需的时间,从而得出舒适度指数(EI)。 例如,击剑15分钟可以燃烧85卡路里的热量,EI为85/15。 您将获得以下格式的列表: [["fencing",15,85],["billiards",60,102],["basketball",15,119]] 或您想要的其他格式。 然后,您将输出具有最高EI的运动。 TL; DR 给定一个元组[name,value1,value2]输出列表,name其中where value2/value1最高。 约束条件 您可能不会在该过程中产生任何非整数的实数。 您不得使用任何内置分数。 规格(规格) 如果满足该结果的名称不止一个,则可以输出它们的任何非空子集或它们的任何元素。 该名称将与regex匹配/^[a-z]+$/,这意味着它仅由小写的拉丁文标准字母组成。 该列表将不会为空。 测试用例 输入: [["fencing",15,85],["billiards",60,102],["basketball",15,119]] 输出: basketball 参考文献 http://calorielab.com/burned/

19
你可以吃多少糖果?
这个想法归功于TNB中的Geobits 最近,一篇没有足够详细信息的帖子提出了一个有趣的游戏: 2个孩子坐在一系列糖果前。每块糖果的编号为1到x,代表x存在的糖果总量。每个数字恰好出现1次。 游戏的目标是让孩子们吃糖果并乘以他们所吃糖果的价值,以获得最终分数,并获得更高的分数。 但是,原始帖子错过了关键信息(例如糖果的选择方式),因此我们故事中的孩子们决定大一点的孩子可以先吃,最多可以吃一半的糖果,但是一旦他宣布转身结束,他不能改变主意。 这个游戏中的一个孩子不喜欢糖果,所以他想尽可能少吃东西,而且他曾经看着父亲一次写过一些代码,并且他可以利用从中获得的技能来算出多少糖果他需要吃东西以确保胜利,同时仍然尽可能少吃东西。 挑战 给定糖果总数,即使对手将所有剩余的糖果都吃掉了x,您的程序或函数也应该输出为保证胜利而必须吃的最少n的糖果。 自然地,数字越大,数字越大,所以无论您给他多少,他都会吃掉 n最多的数字。 规则 x在您的语言的数字处理能力的上限范围内,将始终是一个正整数0 < x! <= ll 确保孩子总是吃n最多的,例如x = 5和n = 2,他将吃4和5 测试用例 x = 1 n = 1 (1 > 0) x = 2 n = 1 (2 > 1) x = 4 n = 2 (3 * 4 == …

25
标准化样品(计算z得分)
给定浮点数列表,对其进行标准化。 细节 如果所有值的平均值为0,并且标准偏差为1,则列表x1,x2,…,xnx1,x2,…,xnx_1,x_2,\ldots,x_n是标准化的。一种计算方法是首先计算平均值μ和标准偏差σ为 μ = 1个μμ\muσσ\sigmaμ=1n∑i=1nxiσ=1n∑i=1n(xi−μ)2−−−−−−−−−−−−√,μ=1n∑i=1nxiσ=1n∑i=1n(xi−μ)2, \mu = \frac1n\sum_{i=1}^n x_i \qquad \sigma = \sqrt{\frac{1}{n}\sum_{i=1}^n (x_i -\mu)^2} , 然后通过替换每一个计算标准化xixix_i与xi−μσxi−μσ\frac{x_i-\mu}{\sigma}。 您可以假定输入至少包含两个不同的条目(这意味着σ≠0σ≠0\sigma \neq 0)。 请注意,某些实现使用样本标准偏差,该样本标准偏差不等于我们在此处使用的总体标准偏差σσ\sigma。 有一个CW答案为所有平凡的解决方案。 例子 [1,2,3] -> [-1.224744871391589,0.0,1.224744871391589] [1,2] -> [-1,1] [-3,1,4,1,5] -> [-1.6428571428571428,-0.21428571428571433,0.8571428571428572,-0.21428571428571433,1.2142857142857144] (这些示例是使用此脚本生成的。)

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 -------- …

6
搭配醒目的时钟
介绍: 在家里,我们有一个时钟,每小时都会敲定一个既定数量的时钟,但也每半小时敲一次。因此,从0:01到12:00(包括12:00)按以下顺序进行: 1, 1, 1, 2, 1, 3, 1, 4, 1, 5, 1, 6, 1, 7, 1, 8, 1, 9, 1, 10, 1, 11, 1, 12 挑战: 给定一个整数n,输出一个总罢工等于的时间范围列表n。此外,请务必在该时间范围之前至少1分钟开始,并在此时间范围之后至少1分钟(最多29分钟)结束。 例如,如果输入为n=8,则输出可能为: [00:59-03:01, 01:29-03:31, 02:59-04:01, 05:29-06:31, 06:29-07:01, 06:59-07:31, 07:59-08:01] 对于这些时间范围,它们的总和如下8: [1+1+2+1+3, 1+2+1+3+1, 3+1+4, 1+6+1, 1+7, 7+1, 8] 挑战规则: 输出灵活。您可以输出为时间(或日期/日期时间)对象,时间戳记,字符串(带或不带前导零),带.29/ .31/ .59/的小数.01(即0.29-3.01代替00:29-03:01)等。只要清楚,它就在时间范围的前后。 此外,您可以自己选择金额。在我的所有示例中,我使用1分钟,但您也可以选择5分钟,15分钟等。这也意味着您可以使用.4/ .6/ …

14
模组平衡清单
介绍 假设我有一个整数列表,比如说L = [-1,2,2,1,2,7,1,4]。我喜欢在生活中保持平衡,因此很高兴看到它具有与偶数元素一样多的奇数元素。更重要的是,它在3的所有模数类中也具有相等数量的元素,并且其元素位于: [-1,2,2,1,2,7,1,4] 0 mod 3: 1 mod 3: 1 7 1 4 2 mod 3: -1 2 2 2 可悲的是,对于4的模数类,它不再成立。一般情况下,我们说一个非空列表被模平衡Ñ如果它具有相同数量的在所有模类元素Ñ指此数目不是0上面所列大号是平衡的模2和3,但非平衡模4。 任务 您的输入是一个非空列表L,该列表以任何合理的格式获取整数。您的输出是N≥2的那些整数的列表,以使L取N为模,并且仍然采用任何合理的格式。输出的顺序无关紧要,但是它不应包含重复项。 确保输出中只有有限数量的数字,这恰恰意味着并非L的所有元素都在其中出现相同的次数。无效输入的示例为[3],[1,2]和[0,4,4,0,3,3]。请注意,输出中的最大数字最多为max(L)-min(L)。 每种语言的最低字节数为准,并且适用标准代码高尔夫球规则。 测试用例 [1,1,2] -> [] [1,1,5] -> [2,4] [1,1,24] -> [23] [1,2,3,2] -> [2] [12,12,-4,20] -> [2,3,4,6,8,12,24] [1,1,12,12,-3,7] -> [3,10] [-1,2,2,1,2,7,1,4] -> [2,3] [4,-17,-14,-18,-18,3,5,8] …

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 

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 

6
n * k = dd0d00d其中d =…?
给定正整数n≤500: 找出最小的正整数k,以使n * k的十进制表示形式中的所有数字均为0或d,且1≤d≤9。 在不到30秒的时间内打印或返回d(有关“说明和规则”部分的详细信息,请参阅d)。 简单的例子 这是d的前30个值。 +----+-------+---------+---+ +----+-------+---------+---+ | n | k | n * k | d | | n | k | n * k | d | +----+-------+---------+---+ +----+-------+---------+---+ | 1 | 1 | 1 | 1 | | 16 | 5 | 80 | 8 …

12
正负多面体!
您的提交必须包含一个数字列表(以您的语言支持的任何列表格式,或使用多个功能/命令行参数),或一串数字,并用一个不是的字符分隔0123456789。用一种语言,它必须将所有语言相加并输出和。用另一种语言,它必须按顺序输出彼此相减的结果。例: 12 5 7 2 在一种语言中,它必须输出26,而在另一种语言中,它必须输出-2。请注意,所有输入的数字都是小于的正整数100。所20提供的数字将永远不会超过,因此您的输出将永远不会大于2000或小于-1899。任何问题?在下面发表评论!

19
产生丢勒的魔方
挑战 输出Dürer著名的魔方的数组或字符串表示形式: 那是, 16 3 2 13 5 10 11 8 9 6 7 12 4 15 14 1 该广场的某些属性可能会被利用,它们是: 它包含从1到的每个整数16一次 每列或每行的总和以及两个对角线的每一个的总和是相同的。这是魔方的定义属性。总和是平方的魔术常数。 另外,对于这个特定的正方形,四个象限中每个象限的总和也等于魔术常数,中心四个正方形的总和和角点四个正方形的总和也等于魔术常数。 规则 不允许生成魔术方块的Bultin(例如Matlab magic或Mathematica的MagicSquare)。可以使用任何其他内置函数。 该代码可以是程序或函数。 没有输入。 数字必须以10为底。输出格式像往常一样灵活。一些可能性是: 嵌套数组(函数输出或其字符串表示形式,带或不带分隔符,任何类型的匹配括号): [[16, 3, 2, 13], [5, 10, 11, 8], [9, 6, 7, 12], [4, 15, 14, 1]] 2D阵列: {16, 3, 2, …

8
仅用0-9和四个运算符来表示数字
说明 Befunge是使用stack的二维程序。 这就是说,做5 + 6,你写56+,意思是: 56+ 5 push 5 into stack 6 push 6 into stack + pop the first two items in the stack and add them up, and push the result into stack (to those of you who do not know stacks, "push" just means add and "pop" …

5
我需要将多少个平方,立方,四次幂等求和为n?
您会得到一个非负整数n和一个integer p >= 2。您需要将一些次p幂(p=2即正方形,p=3表示立方体)加在一起才能得到n。这始终适用于任何非负数n,但您不知道需要多少次p幂(任何正整数)。 这是您的任务:找到p可以求和的最小n 次方n。 例子 >>> min_powers(7, 2) 4 # you need at least four squares to add to 7 # Example: (2)^2 + (1)^2 + (1)^2 + (1)^2 = 4 + 1 + 1 + 1 = 7 >>> min_powers(4, 2) 1 # you need at least …

12
所有人都说……
目标给定不包含字符[或的文本输入],请执行以下操作: 对于Amen具有至少一个大写字母的每个实例(因此,所有Amen不包含的实例amen),都输出相同的名称Amen(保留大写)。 对于/all the people said[?: ]/i(这是一个正则表达式)的每个实例,还输出Amen(任何情况都可以)。 在每个输出之后,您可以选择任何常量分隔符,例如换行符,空格或什么都不做。 这是一个代码高尔夫球,因此以字节为单位的最短程序获胜。 IO范例 Input: I said AMEN! AMEN, PEOPLE! Output: AMENAMEN ; any separator is fine, I choose none. Input: amen amen amen amen Output: ; nothing Input: ; empty Output: ; nothing Input: *blah blah blah* And all the people said? Output: …

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.