Questions tagged «arithmetic»

与基本算术有关的挑战。

30
通过输入打印乘法表
在此挑战中,您必须通过输入来打印乘法表,以下是一些示例: Input: 2 Output: 0 2 4 6 8 10 12 14 16 18 20 Input: 20 Output: 20 40 60 80 100 120 140 160 180 200 规则 以字节为单位的最短代码获胜。 这个挑战是一个代码高尔夫,它遵循代码高尔夫的一般规则(code-golf) 如果您的代码无法打印数字,则可以使用字母,这是一个示例: 输入:B 输出:BDFHJLNPRT 您可以选择从0或数字(例如20)开始。您可以选择是否放置空格。挑战是免费的,只需输入并打印乘法表即可。 您的输出必须列出给定数字的时间表的前10个成员。您可以省略0 * n。

8
画一个phi三角形
澄清:基本上,你需要这个 欧拉的totient函数的名称为phi。 让我们尝试计算phi(8) 首先,向后列出所有数字8,且不包括0或以下 8 7 6 5 4 3 2 1 现在找出哪些数字与8不共享因数(1不计数),并#在其位置放置a 。 8 # 6 # 4 # 2 # 删除数字。 # # # # - 现在执行此操作,但是将输出串成三角形 9 88 777 6666 55555 444444 3333333 22222222 111111111 --------- 123456789 # 排除非要素共享数 9 8# 7## 6#66 5#### 4#4#4# 3##3##3 2#2#2#2# …

23
找到正因数!
定义 如果数字大于零,则为正数。 如果数字(A)可以除以无余数,则它是另一个数字(B)的除数。AB 例如,2是6因的除数,2可以除以6余数。 目标 您的任务是编写一个带正数的程序/函数,然后找到所有除数。 限制 您不得使用任何与prime 或 factorization相关的内置函数。 算法的复杂度不得超过O(sqrt(n))。 自由 输出列表可能包含重复项。 输出列表不需要排序。 计分 这是代码高尔夫球。以字节为单位的最短解决方案获胜。 测试用例 input output 1 1 2 1,2 6 1,2,3,6 9 1,3,9

1
帮助Jason格式化他的JSON
杰森(Jason)有一个很大的JSON,但它不可读,因此需要美化它。 格式化规格 JSON有4种不同的类型: 数字;只是0-9 弦; 用双引号引起来的"字符串\ 数组;以分隔[],项目以分隔,,项目可以是以下任何类型 对象;以分隔{},格式是key: valuekey是字符串,value是这些类型中的任何一种 间距 数组之间的逗号之间应仅留一个空格 对象应该在键和值之间只有一个空格, : 缩进 每个嵌套级别比上一个缩进2个级别 每个对象键/值对始终在自己的行上。对象缩进 如果数组包含另一个数组或对象,则该数组将缩进多行。否则,数组将保持一行 规则 内置插件,其轻视这个任务都不会允许的。 一如既往,不允许出现标准漏洞 例子 [1,2,3] [1, 2, 3] {"a":1,"b":4} { "a": 1, "b": 4 } "foo" "foo" 56 56 {"a":[{"b":1,"c":"foo"},{"d":[2,3,4,1], "a":["abc","def",{"d":{"f":[3,4]}}]}]} { "a": [ { "b": 1, "c": "foo" }, { "d": [2, …
11 code-golf  string  json  code-golf  number  code-golf  image-processing  code-golf  string  code-golf  number  sequence  arithmetic  number-theory  code-golf  string  code-golf  string  counting  code-golf  ascii-art  code-golf  math  code-golf  tips  code-golf  string  code-golf  grid  graph-theory  code-golf  parsing  interpreter  brainfuck  code-golf  math  arithmetic  number-theory  programming-puzzle  c#  code-golf  dominoes  code-golf  tips  code-golf  string  grid  crossword  code-golf  string  code-golf  kolmogorov-complexity  code-golf  number  sequence  code-golf  string  math  number  number-theory  primes  fastest-code  code-golf  number  code-golf  string  code-golf  ascii-art  number  kolmogorov-complexity  code-golf  string  grid 

15
同等关系
给定3个正整数a,,b和n(其最大值是您的语言中可表示的最大整数值),如果输出a ≡ b (mod n),则为true,否则为false。对于那些不熟悉一致性关系的人,a ≡ b (mod n)如果iff a mod n = b mod n(或等价于(a - b) mod n = 0),则为真。 限制条件 禁止内置一致性测试方法 内置的模运算是禁止的(这包括诸如Python divmod函数之类的操作,该函数既返回商又返回余数,以及除数函数,残差系统函数等) 测试用例 (1, 2, 3) -> False (2, 4, 2) -> True (3, 9, 10) -> False (25, 45, 20) -> True (4, 5, 1) …

10
算术级数
您的任务是分析输入和输出第n个项(如果它是算术序列)的公式,否则应打印“ NAAP”。 输入值 输入(来自STDIN)将由几个数字组成,介于4到10个数字之间,其中每个数字的范围在-1000到1000之间(包括-),并以定界符(空格,逗号或分号[您的偏好])。这是一些示例输入。 12,14,16,18 //valid -3 4 5 1 -2 -4 //valid 45;35;-35 //invalid (only three numbers are present instead of the minimum of 4 numbers) 2,32;21,321 //invalid (it uses two different delimiters: `,` and `;`) 输出量 程序应首先检查输入是否为算术级数。 简而言之,算术级数(AP):每个AP都有一个共同的区别。这是$ n $和$ {n-1} $项之间的差(基本上$ a(n + 1)a-a (n)$,其中是序列的函数)。对于AP中$ n $的任何值,此差异均保持不变。如果没有共同的差异,则它不是算术序列。要计算第n个项的值,请使用以下公式$ …

15
分配号码
在这个挑战,你会使用BE 分配了金额和数量的不同产品,如解释在这里。 例子 Input | Output -------------|------------- 23(12+42) | (23*12)+(23*42) 9(62-5) | (9*62)-(9*5) 4(17+8-14) | (4*17)+(4*8)-(4*14) 15(-5) | -(15*5) 2(3) | (2*3) 8(+18) | +(8*18) 8(-40+18) | -(8*40)+(8*18) 规格 输入将是形式为字符串的字符串n(_),带有单个正无符号整数,n后跟一个带括号的表达式_。该表达式_将由以+和-号分隔的多个正整数项之一的和与差组成。第一项之前可以带有+符号,-符号或没有符号。 在输出中,n应分配初始数字以乘以每个项。a应该将的每个术语左乘以n产生带括号的表达式(n*a),并且这些新术语应与+和-符号以与原始术语完全相同的方式进行组合。 输入无效 这些是您不必处理的输入示例。 3(5 plus 3) 6(5 13) (5+8)(6+6) (5+3)8 获奖 这是代码高尔夫球,因此以字节为单位的最短代码获胜。

6
最大串联产品
给出了一个整数列表p1,...,pk(不一定是不同的),其中每个值的范围都在1到9之间(含1和9)。仅使用一次每个p1,...,pk,我们就可以形成数字的级联,以获得一个新的数字列表;然后,我们输出此新列表的产品。目的是通过选择最佳的数字级联来最大化此乘积。 例如,我们得到以下列表:2 3 2(用空格分隔)。我们可以形成以下串联: 2 3 2(这些串联的乘积是12) 23 2(商品是46) 32 2(商品是64) 22 3(商品是66) 因为我们可以形成的最大乘积是66,所以我们将其输出。 规则: 必须至少有一个乘法(即,您不能只连接所有数字并输出)。 除乘法或插入括号等外,不能使用任何其他运算符。 假定给定的整数列表由空格分隔,并且所有整数的值都在1到9之间。 最短的代码(以字节为单位)获胜! 测试用例: 输入:1 2 3; 输出:(63即21*3) 输入:2 5 9; 输出:468(52*9) 输入:1 2 3 4; 输出:1312(41*32)

5
广义Gematria计算器
为任何给定的Unicode字符序列(如字母)创建一个双向Gematria计算器。 Gematri-什么? Gematria是一种为符号分配数值的系统,该系统由古希腊人开发并由古代犹太人采用。它采用类似于ASCII或Unicode的方式,只是非线性的。请参见下表(完整的表可在上面的链接中找到): Index Letter Letter name Value -------------------------- 0 א "Alef" 1 1 ב "Bet" 2 ... 8 ט "Tet" 9 9 י "Yud" 10 10 כ "Kaf" 20 ... 17 צ "Tsady" 90 18 ' "Kuf" 100 19 ר "Resh" 200 ... 字母的名称并不重要,只是字母在字母“数组”中的索引以及相应的数值。希伯来字母只有22个字母(不包括“最终”字母),因此最大可用值为400。 如果我们将此系统借用到英语字母(AZ),我们将得到A = 1,B = 2 …

1
最小的覆盖面积,用于二次方性方差测试
挑战 找到可以通过查表测试二次残基集的最小基数(例如,模),以确定给定的非负整数n是否为理想平方。所有底数都必须小于或等于n的最大值的平方根。 给定类别n的基数最小的答案将赢得挑战。(这意味着可能有一个以上的获胜者。)n的类别为: Category Maximum allowed n Maximum allowed modulus/base ------------- -------------------- ---------------------------- 8-bit values 255 15 16-bit values 65535 255 32-bit values 4294967295 65535 64-bit values 18446744073709551615 4294967295 如果两个基数相等的平局出现平局,则平局将转到具有更大能力以较早地检测非平方的组。 如果没有找到完整的封面(对于32位和64位类别来说完全有可能),则获胜者将是一组从统计学上或经证明可排除最高百分比的非平方数的基数(无误)将正方形报告为非正方形)。有关不完整保险单的讨论,请参见下文。 背景 在许多数论应用中,会出现一个问题,即某个数n是否为一个完美的平方(0、1、4、9、16、25、36、49、64、81、100等)。测试的一个方法是否Ñ是正方形是测试是否地板(√N)2 = N,即是否圆形向下的平方根Ñ,平方时,还给Ñ。例如,floor(√123)²=11²= 121,它不是123,所以123不是正方形。但是楼板(√121)²=11²= 121,所以121是正方形。此方法适用于少量数字,特别是在可用硬件平方根运算的情况下。但是对于大量(数百或数千位)的数据,它可能会非常慢。 测试正方形性的另一种方法是使用二次残差表排除非正方形。例如,以10为底的所有平方必须有一个最终的(一位)数字,该数字为0、1、4、5、6或9。这些值构成以10为底的二次残差集。 -10号以0、1、4、5、6或9结尾,您知道它可能是方形的,因此需要进一步检查。但是,如果以10为底的数字以2、3、7或8结尾,则可以确定它不是平方。 因此,让我们看看另一个基础。以8为底​​的所有平方必须以0、1或4结尾,方便地,这只是8种可能性中的3种,这意味着一个随机数可能为平方的概率为37.5%,或者一个绝对数不是平方的概率为62.5%。这些比基数10给出的几率要好得多。(并且请注意,以8为底的模数运算只是一个逻辑与运算,而不是以10为底的模数除以10并除以余数。) 有更好的基础吗?好吧,是的,实际上。基础120有18种可能性(0、1、4、9、16、24、25、36、40、49、60、64、76、81、84、96、100和105),仅占15%可能是正方形的机会。而基数240更好,只有24种可能性,仅代表10%的可能是正方形。 但是,没有一个单独的基数可以单独确定平方度(除非它大于要测试的最大数,这是不切实际的)。一个单一的基地只能排除方形性。它不能最终验证方形性。只有精心选择的一组基础一起使用,才能最终验证整数范围内的直角性。 因此,问题就变成了:哪一组基形成最小的覆盖范围,这些覆盖范围一起可以确定性地推算出正方形度或非正方形度? 正确但非最小保障的示例 以盖子16为基础的盖子{3、4、5、7、8、11、13、16、17、19、23、25、29、31、37}足以确定底角的正方形或非正方形。所有 16位值0到65535。但这不是最小覆盖率,因为至少存在一个15基覆盖率,而且很容易发现。实际上,很可能存在较小的掩护-可能只有6或7个碱基。 但为说明起见,让我们看一下使用此16基覆盖集测试n的样本值。这是上述碱基集的二次残基集: Base m Quadratic …

1
通过使用给定的数字和算术运算符列表生成数字
系统会为您提供数字列表L = [17, 5, 9, 17, 59, 14],一包运算符O = {+:7, -:3, *:5, /:1}和一个数字N = 569。 任务 输出一个方程式,该方程式L的左侧使用所有数字,而右侧使用仅数字N。如果不可能,则输出False。解决方案示例: 59*(17-5)-9*17+14 = 569 局限和澄清 您不能连接数字([13,37]不能用作1337) 只会出现自然数和零L。 顺序L无关紧要。 您必须使用中的所有数字L。 只有运营商+,-,*,/会出现O。 O可以拥有比您所需更多的运算符,但至少|L|-1运算符 您最多可以多次使用每个运算符,直到的值O。 其中的所有四个运算O都是标准的数学运算;特别/是具有精确分数的正态除法。 点数 点越少越好 代码的每个字符都给你一点 您必须提供易于阅读的非公开版本。 背景 一个类似的问题,有人问堆栈溢出。我认为这可能是一个有趣的代码高尔夫挑战。 计算复杂度 就像彼得·泰勒(Peter Taylor)在评论中说的那样,您可以使用以下方法求解子集和: 您有一个子集总和的实例(因此,有一组S和一个整数x) L:= S + [0,...,0](| S |乘以零),N:= x,O:= {+:| S | -1,*:| …

7
谁的邻居是敌对的?
介绍 出于挑战的目的,我们将在正方形矩阵定义元素的邻居(使得)为 与对角线,水平或垂直相邻的所有项。(即,它们“环绕”而不环绕)。ËËE一个一个AË= A我,ĴË=一个一世,ĴE=A_{i,j}一个一个AEËËE ËËE 对于悬挂物,的邻居的正式定义用于 MATIX为(0索引): 中 一个我,Ĵ一个一世,ĴA_{i,\:j}n × nñ×ñn\times n一个一个Añ我,Ĵ= { A一,b| (一,b )∈ Ë我,Ĵ∩([ 0 ,n )∩Z )2}ñ一世,Ĵ={一个一个,b∣(一个,b)∈Ë一世,Ĵ∩([0,ñ)∩ž)2}N_{i,\:j}=\{A_{a,\:b}\mid(a,b)\in E_{i,\:j}\:\cap\:([0,\:n)\:\cap\:\Bbb{Z})^2\}Ë我,Ĵ= { i − 1 ,我,i + 1 } × { j − 1 ,Ĵ ,j + 1 } \ { i ,j }Ë一世,Ĵ={一世-1个,一世,一世+1个}×{Ĵ-1个,Ĵ,Ĵ+1个} \ {一世,Ĵ}E_{i,\:j}=\{i-1,\:i,\:i+1\}\times \{j-1,\:j,\:j+1\} \text{ \\ …

3
盲二进制加法器
假设您有两个盒子B(x)和B(y),每个盒子都包含一个未知的位-0或1,以及一台F可以对其进行X射线检查并产生第三个盒子B(x^y)(xor)的机器。F也可以计算B(x*y)(和)。实际上,这些只是机器可以执行的单个操作的特殊情况- 每个内部产品,F()如下所示。 对于两个相同长度的数组 [B(x[0]), B(x[1]), ..., B(x[n-1])] [B(y[0]), B(y[1]), ..., B(y[n-1])] 内积定义为 B(x[0]*y[0] ^ x[1]*y[1] ^ ... ^ x[n-1]*y[n-1]) “ 每个 ”是指F()可以处理多对x[],y[]一气呵成。一对中的x[]和y[]必须具有相同的长度;来自不同对的x[]-s和y[]-s不一定需要。 框由唯一的整数ID表示。 每个 JavaScript 内部产品的实现可能看起来像 var H=[0,1]; // hidden values, indexed by boxId function B(x) { // seal x in a new box and return the box id return …

12
简单的州营业税计算器
至少可以说,美国的营业税很复杂。通常,有州销售税(有几个州不收取州销售税),但也可能有县级销售税,学区销售税,市政(市)销售税或大都市地区营业税。在城市的不同地区甚至可能会有不同的营业税。但是,出于这一挑战的目的,我们将只关注州销售税。 给定美元金额大于零(精确到小数点后两位)和状态(全名或两个字母的缩写,则选择,大小写无关紧要),并使用下面的销售税百分比表,输出该特定销售所需收取的相应州营业税,准确并截短至两位小数。请指定您的代码如何处理舍入。 编辑:华盛顿的缩写被错误地列出为WS而不是WA。答案可以使用任何一种缩写,因为那是我的愚蠢。 State Abbr % Alabama AL 4.00% Alaska AK 0.00% Arizona AZ 5.60% Arkansas AR 6.50% California CA 6.00% Colorado CO 2.90% Connecticut CT 6.35% Delaware DE 0.00% Florida FL 6.00% Georgia GA 4.00% Hawaii HI 4.00% Idaho ID 6.00% Illinois IL 6.25% Indiana IN 7.00% Iowa IA …

5
再次可视化欧几里得算法
任务 给定两个正整数: 绘制由两个整数指定的尺寸的矩形。 重复步骤3,直到没有更多空间。 绘制并填充与(剩余)矩形的三个边接触的最大正方形。 输出结果矩形。 例 例如,我们的输入是6和10。 我们绘制大小为6 x 10的空心矩形: xxxxxxxxxx xxxxxxxxxx xxxxxxxxxx xxxxxxxxxx xxxxxxxxxx xxxxxxxxxx 重复填充正方形后,我们将获得以下结果: aaaaaabbbb aaaaaabbbb aaaaaabbbb aaaaaabbbb aaaaaaccdd aaaaaaccdd 有4个方格位置(a,b,c,d),每个边长6,4,2,2分别。 规则与自由 您必须为每个正方形使用不同的字母。 您可以选择要支持的字母,只要支持的字母都是可打印字符,并且至少10支持字符即可。 在上面的步骤3的每个迭代中,您都有两个选择(在上一个迭代中,只有一个选择)。两种选择均有效。 所需的平方数不会超过您支持的字母数。 您可以按任何顺序用支持的字母填写方块。 测试用例 输入: 6, 10 输出: aaaaaabbbb aaaaaabbbb aaaaaabbbb aaaaaabbbb aaaaaaccdd aaaaaaccdd 要么 aaaaaaccdd aaaaaaccdd aaaaaabbbb aaaaaabbbb aaaaaabbbb aaaaaabbbb 要么 …

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.