Questions tagged «number»

旨在通过使用,操纵,接受输入或输出数值来解决此难题。

22
复数的指数
给定两个整数,其可以是负,零或正数,a和b(采取任何合理的格式,包括输入一个普通的复数),将其转换为a + bi其中i是虚数(负一的平方根)。然后,将其提高到第三个(正整数)输入变量的幂,c以。然后,您应该得到类似的结果。然后,必须输出,或返回,并在任何合理的格式(包括输出一普通复数)。(a + bi)cd + eide 输入和输出可以以任何顺序进行或输出。 例子: 5, 2, 2 -> 21, 20 1, 4, 2 -> -15, 8 -5, 0, 1 -> -5, 0

7
指示灯何时闪烁?
假设您有两个灯。这些指示灯以特定速率闪烁: Light 0: Delay 0ms and then blink every 1000ms Light 1: Delay 500ms and then blink every 1000ms 让我们在前2000ms中模拟这些灯: 0ms: Light 0 on 500ms: Light 1 on 1000ms: Light 0 off 1500ms: Light 1 off 2000ms: Light 0 on 挑战 给定一个表示照明时间的有序对的列表,编写一个程序或函数以输出它们闪烁时的顺序。 输入值 输入应采用以下格式: TimeToSimulate Light0Delay,Light0Period Light1Delay,Light1Period ... 以这种格式,上面的示例将是: 2000 …
10 code-golf  number 

12
找出第二个零
挑战 给定一个32位二进制补码格式的整数,请返回二进制表示形式中第二个最低有效零数字的索引,其中索引0表示最低有效位,而索引31表示最高有效位。 如果没有第二个零,则可以返回0,任何负数,任何虚假值或以您的语言有意义的方式报告错误。 如果愿意,可以使用1索引,但是下面的测试用例将使用0索引。 如果愿意,可以使用无符号整数。如果这样做,则必须处理范围内的整数[0, 2^32)。如果使用带符号整数,则必须处理范围内的整数[-2^31, 2^31)。这里的测试用例将使用带符号的整数,但请注意,-x(带符号)为2^32 - x(无符号)。 测试用例 0(0b00)-> 1 1(0b001)-> 2 10(0b1010)-> 2 11(0b01011)-> 4 12(0b1100)-> 1 23(0b010111)-> 5 -1(0b11..11)->无 -2(0b11..10)->无 -4(0b11..00)-> 1 -5(0b11..1011)->无 -9(0b11..10111)->无 2 ^ 31-2(0b0111..1110)-> 31 计分 这是代码高尔夫球,因此每种语言中最短的答案将获胜!
10 code-golf  number 

13
克拉克三角
好吧,最近我踢了一点三角,所以这是另一个。 Clark的三角形是一个三角形,其中每行的最左边的条目为1,最右边的条目由6的倍数组成,随着行数的增加而增加。这是可视化 1 6 1 . 12 1 . . 18 1 . . . 24 1 . . . . 30 1 . . . . . 36 就像Pascal的Triangle一样,所有其他条目都是右上角和左上角数字的总和。 这是前几行 1 6 1 7 12 1 8 19 18 1 9 27 37 24 1 10 36 64 61 …
10 code-golf  math  number 

6
N个碱基中的回文数
给定一个非负整数n >= 0,请永远输出x_i >= 3以完全n不同b的底数为回文数的整数序列,底数可以是2 <= b <= x_i-2。 这基本上是OEIS A126071的反函数,在此输出中该序列中的哪些索引具有值n。有点不同,因为我更改了它,所以您忽略了碱基b = x_i-1, x_i, x_i+1,因为这些碱基的结果始终是相同的(值始终是回文率,或者始终不是)。此外,偏移量也不同。 x_i限制为数字,>= 3因此每个结果的第一项n为A037183。 请注意,输出格式是灵活的,但是应该以很好的方式分隔数字。 例子: n seq 0 3 4 6 11 19 47 53 79 103 137 139 149 163 167 ... 1 5 7 8 9 12 13 14 22 23 25 29 35 …
10 code-golf  sequence  base-conversion  palindrome  code-golf  array-manipulation  matrix  code-golf  string  ascii-art  code-golf  ascii-art  physics  code-golf  number  sequence  fibonacci  code-golf  ascii-art  packing  code-golf  string  hexadecimal  code-challenge  restricted-source  decision-problem  binary  code-golf  code-golf  code-golf  stack-exchange-api  code-golf  string  parsing  generation  data-structures  code-golf  kolmogorov-complexity  graphical-output  code-golf  array-manipulation  integer  generation  data-structures  code-golf  number  random  probability-theory  king-of-the-hill  java  minesweeper  code-golf  string  kolmogorov-complexity  animation  code-golf  string  code-golf  code-golf  quine  code-golf  internet  code-golf  arithmetic  base-conversion 

5
在模块化SNUSP中找到数字的最短表示形式
背景 许多深奥的编程语言都没有在文字上内置数字,因此您必须在运行时进行计算。在许多情况下,数字表示可能会很有趣。在表示欠载数字时,我们已经遇到了挑战。这个挑战是关于在模块化SNUSP中表示数字。(请注意,您不需要学习SNUSP即可完成此挑战-所需的所有信息都在规范中-但您可能会发现背景很有趣。) 任务 出于此挑战的目的,模块化SNUSP数字是由字符@,+和组成的字符串=,除了最后一个字符是#,并且倒数第二个字符必须为+或=(不能为@)。例如,有效号码包括@+#,==#,和@@+@=#; 无效号码的例子包括+=,@@#,和+?+#。 模块化SNUSP编号的值递归计算如下: # 的值为0(这是基本情况)。 如果数字具有形式=x,则对于任何字符串x,其值都等于的值x。 如果数字具有形式+x,对于任何字符串x,其值等于的值x加1。 如果数字具有形式@cx,则对于任何单个字符c和任何字符串x,其值等于的值x加上的值cx。 对于这个挑战,您必须编写一个程序,该程序将一个非负整数作为输入,并输出一个字符串,该字符串是可能的最短Modular SNUSP数字,其值等于输入。 澄清说明 完全可能存在多个具有相同值的字符串,尤其是对于某些整数,该值与最短的模块化SNUSP编号会有关系。在这种情况下,您可以输出涉及平局的任何数字。 查找数字的算法没有限制;例如,强制使用字符串并对其进行求值是一种合法策略,但这样做会更聪明以减少搜索空间。 像在PPCG上一样,您的提交可以是完整程序也可以是函数(选择使用您的语言更简洁的那个)。 这不是处理输入和输出格式的问题,因此您可以使用任何合理的方式输入非负整数并输出字符串。有上元一个完整的指南,但最常用的法律手段包括函数参数/返回,命令行参数和标准输入/标准输出。 测试用例 以下是前几个数字的最短表示形式: 0:# 1:+# 2:++# 3:+++#或@++# 4:++++#或+@++#或@=++# 5:@+++#或@@++# 6:+@+++#或+@@++#或@=+++#或@=@++#或@@=++# 7:@++++#或@+@++# 8:@@+++#或@@@++# 9:+@@+++#或+@@@++#或@+++++#或@++@++#或@+@=++#或@@=+++#或@@=@++# 10:@=@+++#或@=@@++#或@@@=++#(这是一个非常重要的测试用例,因为所有可能的答案都包括在内=) 11:@+@+++#或@+@@++#或@@++++#或@@+@++# 12:+@+@+++#或+@+@@++#或+@@++++#或+@@+@++#或@=+@+++#或@=+@@++#或@=@=+++#或@=@=@++#或@=@@=++#或@@=++++#或@@=+@++#或@@=@=++# 13:@@@+++#或@@@@++# 14:+@@@+++#或+@@@@++#或@=@++++#或@=@+@++#或@@+++++#或@@++@++#或@@+@=++# 15:@+@++++#或@+@+@++#或@@=@+++#或@@=@@++#或@@@=+++#或@@@=@++# 作为更大的试验情况下,从输入输出40应当是@@@=@@+++#,@@@=@@@++#,@@@@=@+++#,或@@@@=@@++#。 胜利条件 作为代码高尔夫球挑战,获胜者是最短的参赛作品,以字节为单位。
10 code-golf  number 

2
赛马的一天
背景 上世纪90年代末/ 00年代初,Flash Web Design非常酷,以至没有一个完整的Flash网站或至少没有动画小部件的人都无法生存,我受雇在Flash / Actionscript中开发“赛马查看器”,以80年代电子游戏风格的动画形式呈现,因此网站的访问者不仅可以阅读比赛结果,还可以通过动态动画观看比赛结果!哇!令人印象深刻! 他们向我提供了一个CSV文件,其中包含所有比赛的详细信息:开始和到达的顺序,赛马名称,车手姓名,奖品等。我的Flash应用程序为每次比赛读取该文件,并显示上述动画。 如今,Flash支持已大大下降,因此我们必须恢复为ascii-art! 任务 您的任务是创建一个完整的程序或函数,以从标准输入中读取CSV格式的比赛数据,并输出该比赛的ascii艺术表示形式,如下例所示。 输入 带有2个字段的CSV数据:1)开始顺序;2)到达完成时间的时间格式1.13.4(1分钟,13秒,十分之四秒)。如果时间报告R表明该马由于事件,跌倒或其他原因而退赛(未完成比赛)。注意:两匹或更多匹马的到达时间可能相同,在这种情况下,它们共享到达位置。 1,1.13.4 2,1.13.0 3,R 4,1.12.7 5,1.11.5 6,1.13.4 7,1.12.1 8,1.17.9 输出值 对于每个CSV行,输出如下所示的赛马场: 1_|______________4(1.13.0)___________________________ 赛马场由以下人员组成: 1 这是马匹的起跑顺序。 _|_垫片在哪里|,终点线在哪里。 50 x _表示十分之一秒。 5(1.13.4)即到达位置,然后是到达时间。这必须考虑到马之间的时差。例如:您将第一个到达的时间定位在终点线上1.11.5,第二个到达的时间1.12.1,相差1.12.1 - 1.11.5 = 6十分之一秒,因此第二匹马应定位在第6个字符上,依此类推。如果时间差超过十分之一秒(或5秒),则必须将马匹放在最后。如果马是R(退缩),则相同。 因此,上面CSV数据的整个运行轨道应为: F=Finish line 1_|____________________________5(1.13.4)_____________ 2_|______________4(1.13.0)___________________________ 3_|__________________________________________________R 4_|___________3(1.12.7)______________________________ 5_1(1.11.5)__________________________________________ 6_|____________________________5(1.13.4)_____________ 7_|_____2(1.12.1)____________________________________ 8_|__________________________________________________6(1.17.9) 012345678901234567890123456789012345678901234567890 无需添加F=Finish line,最后一行0123456789...仅用于说明目的。 …

9
超级折叠号码
我们已经在这里定义了折号。 但是现在我们将定义一个超级折叠数。超级折叠数字是一个数字,如果折叠足够的次数,它将最终小于2的幂。折叠的方法与折叠数问题稍有不同。 折叠算法如下: 以二进制表示 例如5882 1011011111010 将其洒入三个分区。前半部分,后半部分和中间数字(如果它的位数为奇数) 101101 1 111010 如果中间数字为零,则该数字不能折叠 反转后半部分并叠加在前半部分上 010111 101101 将数字添加到位 111212 如果结果中有2,则不能折叠该数字,否则新数字是折叠算法的结果。 如果数字可以折叠为连续的一串,则该数字为超级折叠数字。(所有折号也是超级折号) 您的任务是编写一个接受数字的代码,如果该数字是“超级可折叠”数字,则输出一个真实值,否则为“伪造”。您将在程序的大小上得分。 例子 5200 转换为二进制: 1010001010000 分成两半: 101000 1 010000 中间是一个,因此我们继续叠加两半: 000010 101000 添加了它们: 101010 没有二分之一,所以我们继续分成两半: 101 010 折: 010 101 111 结果是111(十进制为7),所以这是一个超级折叠数。 测试用例 前100个超级折号是: [1, 2, 3, 6, 7, 8, 10, 12, …

7
构造雅可比矩阵
取未知向量,并应用一些通用的微分函数。的雅可比然后通过矩阵给出,使得: 例如,假设m=3和n=2。然后(使用基于0的索引) 雅可比f然后 这个挑战的目标是打印这个雅可比矩阵。 输入值 你的程序/功能应该采取作为输入两个正整数m和n,其代表的部件的数目f和u分别。输入可以来自任何所需的来源(stdio,功能参数等)。您可以指定接收顺序,对于输入的答案必须一致(请在答案中指定)。 输出量 代表雅可比矩阵的东西。此表示形式必须明确拼出Jacobian矩阵的所有元素,但是每个术语的确切形式都是实现定义的,只要明确区分什么以及关于什么进行区分,并且每个条目均以逻辑顺序输出。用于表示矩阵的示例可接受形式: 列表列表,其中外部列表​​的每个条目都对应于雅可比行的一行,内部列表的每个条目都对应于雅可比行的列。 字符串或文本输出,其中每行是Jacobian行,每行中由定界符分隔的条目对应于jacobian的列。 矩阵的一些图形/视觉表示。示例:使用MatrixForm命令时Mathematica显示的内容 其他每个条目都已存储在内存中并且可以查询的密集矩阵对象(即,您不能使用生成器对象)。例如,Mathematica如何在内部表示Matrix对象 条目格式示例: 形式为的字符串d f_i/d u_j,其中i和j是整数。例如:d f_1/d u_2。请注意,d和f_1或之间的这些空格x_2是可选的。此外,下划线也是可选的。 形式为d f_i(u_1,...,u_n)/d u_j或的字符串d f_i(u)/d u_j。也就是说,功能组件的输入参数f_i是可选的,并且可以明确地拼写出来或以紧凑形式保留。 格式化的图形输出。例如:计算表达式时Mathematica会打印什么D[f_1[u_,u_2,...,u_n],u_1] 您可以选择起始索引u和目标索引f(请在答案中指定)。输出可以是任何所需的接收器(stdio,返回值,输出参数等)。 测试用例 以下测试用例使用约定m,n。索引显示为从0开始。 1,1 [[d f0/d u0]] 2,1 [[d f0/d u0], [d f1/d u0]] 2 2 [[d f0/d u0, d f0/d u1], [d f1/d u0, d …

25
计算相对论速度
在狭义相对论中,移动物体相对于另一个在相反方向移动的物体的速度由以下公式给出: s = v + u1 + v u / c2。s=v+ü1个+vü/C2。\begin{align}s = \frac{v+u}{1+vu/c^2}.\end{align} s = ( v + u ) / ( 1 + v * u / c ^ 2) 在这个公式中,和是物体速度的大小,是光速(大约是,对此非常接近挑战)。vvvüüuCCc3.0 × 108米/ 秒3.0×108米/s3.0 \times 10^8 \,\mathrm m/\mathrm s 例如,如果一个对象在移动v = 50,000 m/s,而另一个对象在移动u = 60,000 m/s,则每个对象相对于另一个的速度大约为s = 110,000 m/s。这就是您在伽利略相对论(速度简单地相加)下所期望的。但是,如果v …

7
广场中的广场
给定正整数的输入n,编写一个程序来完成以下过程。 找到大于n该整数的最小正整数,它是一个完美的正方形,是n和其他数的串联。的数字顺序n不得更改。级联n以产生一个完美平方的数字可以称为r_1。 如果r_1不是理想的正方形,则重复上述过程,r_1并将其作为该过程的新输入。重复直到r_k是表示的完美正方形s。 打印的值sqrt(s)。 输入可以采用任何格式。您可以假定这n是一个正整数。如果任何r_k一个具有前导零(且r_k≠0),则可以忽略零。 测试用例 这是一些测试用例。该过程演示了上述步骤。 Input: 23 Process: 23, 2304, 4 Output: 2 Input: 10 Process: 10, 100, 0 Output: 0 Input: 1 Process: 1, 16, 6, 64, 4 Output: 2 Input: 5 Process: 5, 529, 29, 2916, 16 Output: 4 Input: 145 Process: 145, 145161, 161, 16129, …

1
数字时钟比赛拼图
有很多带有匹配项的难题,包括添加,删除或移动一定数量的匹配项以创建新的数字或形状。就像使用数字时钟一样。 给定12小时数字时钟上的有效时间,请输出需要移动最少行的数字,以使时钟上的每个可见数字都变为该数字。如果最小位数多于一位,则全部输出。如果不可能使每个数字都相同,则输出-1或输出非0的虚假值(您会得到很多)。 时钟数字如下所示: | | _ _| |_ _ _| _| |_| | _ |_ _| _ |_ |_| _ | | _ |_| |_| _ |_| _| _ | | |_| 测试用例: 输入: 123 时钟显示: _ _ | : _| _| | : |_ _| 输出: 4 说明:的显示1:23要求总共绘制12条线。因此,对于每个数字都相同,每个数字必须具有4行。仅有4行的数字是4。因此,答案必须是4。 输入: …

3
在联合间隔符号中找到2个集合的交点
在联合间隔符号中找到2个集合的交点 给定两组描述为间隔的并集的实数,请输出这两组集合的相交的描述作为相同类型的间隔的并集。 输入集将始终包含间隔的并集,以便每个间隔以不同的整数开始和结束(即,没有间隔的度量为零)。但是,同一集合中的不同间隔可能以相同整数或重叠开始或结束。 输出集还必须是以整数开头和结尾的间隔的并集,但是即使是单个整数,输出中的间隔也不能与其他任何间隔重叠。 输入可以采用任何适合您选择的语言的形式,只要它由两个成对的整数对组成。 例如,您可以将集合表示为: [-10,-4]u[1,5]u[19,20] 或作为: [[-10,-4],[1,5],[19,20]] 或作为: [-10,-4;1,5;19,20] 您的输出表示形式必须与输入表示形式相同(除了它只是间隔的一个列表,而不是两个)。 示例/测试用例: 输入: [[[-90,-4],[4,90]],[[-50,50]]] 输出: [[-50,-4],[4,50]] 换句话说,我们将包含-90和-4之间所有实数以及4和90之间所有实数的集合与包含-50和50之间所有实数的集合相交。交集是包含所有介于-50和-4之间的实数,以及所有介于4和50之间的实数。 -90~~~~~-4 4~~~~~90 intersected with -50~~~~~~~~50 yields: -50~-4 4~~50 输入: "[-2,0]u[2,4]u[6,8] [-1,1]u[3,5]u[5,9]" 输出: "[-1,0]u[3,4]u[6,8]" 输入: [-9,-8;-8,0;-7,-6;-5,-4] [-7,-5;-1,0;-8,-1] 输出: [-8,0] 无效的输出(即使它表示相同的集合): [-8,0;-7,-5;-5,0] 得分: 这是代码高尔夫球,因此以字节为单位的最短源代码获胜,可能会受到以下奖励的影响。 奖金: 如果您还支持正和负无穷大作为区间的边界,则为-15%。您可以选择代表这些数字的令牌。(是的,无穷大是超现实中的数字; P)

26
N个最接近零的数字保持平衡
目标:给定一个正整数n: 如果n是奇数,输出列表中n最接近的数字来0递增的顺序 如果n是偶数,则输出Falsey值。 测试用例: 5 -> [-2,-1,0,1,2] 4 -> false (or any Falsey value) 1 -> [0] 参考实施 function update(){ var num = +document.getElementById("yield").value; if(num){ var out = document.getElementById("output"); if(num % 2 == 1){ // base is balanced var baseArr = []; for(var i=0;i<num;i++){ baseArr.push(i-Math.floor(num/2)); } out.innerHTML = baseArr.join(" "); …

5
任意长度的甲板完美洗净的循环长度
挑战 用最短的代码: 计算的任何大小的一副牌上的完美洗牌排列周期的长度Ñ(其中Ñ ≥2和Ñ是偶数)。 输出所有周期长度的2≤表Ñ ≤1000(Ñ偶数)。 请注意,定义完美混洗有两种基本方法。有一个out-shuffle,将第一张卡放在顶部,最后一张卡在底部,还有in-shuffle,将第一张和最后一张卡向中心移动一个位置。您可以选择进行混洗还是混洗。两者之间的算法几乎相同。 10张牌的随机洗牌次数:[1,2,3,4,5,6,7,8,9,10]↦[1,6,2,7,3,8,4,9,5, 10]。 10张牌的随机洗牌:[1,2,3,4,5,6,7,8,9,10]↦[6,1,7,2,8,3,9,4,10, 5]。 图形示例 在这里,我们看到20张卡片组的洗牌周期为18个步长。(这仅用于说明;您的解决方案不需要以图形方式输出周期。)另一方面,经典的52张卡座的洗牌周期只有8个步长(未显示)。 一个在洗牌 20卡甲板上具有仅6步骤的循环长度。 输出的表格示例 您的程序应该输出与此类似的内容,尽管您可以选择最喜欢的任何表格格式。这是为了洗牌: 2 1 4 2 6 4 8 3 10 6 12 10 14 12 16 4 18 8 20 18 22 6 24 11 26 20 28 18 30 28 32 5 34 …

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.