Questions tagged «number»

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

3
找到最短的哥伦布尺子
哥伦布尺子是非负整数的集合,因此集合中没有两对整数间隔相同。 例如,[0, 1, 4, 6]是Golomb标尺,因为此集合中两个整数之间的所有距离都是唯一的: 0, 1 -> distance 1 0, 4 -> distance 4 0, 6 -> distance 6 1, 4 -> distance 3 1, 6 -> distance 5 4, 6 -> distance 2 为了简化此挑战(并且翻译很简单),我们强加了Golomb标尺始终包含数字0(前面的示例中这样做)。 由于该集合的长度4,因此我们说这是一个有序 的Golomb标尺4。此集合(或元素,因为0总是在集合中)中的最大距离是6,因此我们说这是长度的哥伦布尺 6。 你的任务 找到哥伦布统治者为了 50给100有小(含)的长度,你可以找到。您发现的标尺不一定是最佳的(请参见下文)。 最优性 N如果没有其他N长度较小的Golomb直尺,则称Golomb直尺是最优的。 最佳Golomb直尺的订单少于28个,但随着订单的增加,找到和证明最优性变得越来越困难。 因此,不能期望您找到介于50和之间的任何订单的最佳Golomb标尺100(甚至更不可能期望您可以证明它们是最佳的)。 程序的执行没有时间限制。 基准线 下面的列表是使用天真的搜索策略评估的Golomb尺规从50到100(按顺序)的长度列表(感谢@PeterTaylor获得此列表): [4850 …

16
计算威尔逊得分间隔
的威尔逊得分间隔是成功的概率的置信区间的基础上,成功的在一组伯努利试验的比例(一个伯努利试验是其中恰好两个结果是可能的试验:成功或失败)。该间隔由以下公式给出: 公式给出的两个值是间隔的上限和下限。n S和n F分别是成功和失败的次数,n是试验的总数(相当于n S + n F)。z是取决于所需置信度的参数。出于此挑战的目的,将使用z = 1.96(对应于95%的置信区间)1。 给定非负整数n S和n F,输出威尔逊得分区间的边界。 规则 在您的语言的浮点实现限制内,输出必须尽可能精确到真实值,而忽略由于浮点算术错误而引起的任何潜在问题。如果您的语言能够执行任意精度算术,则它必须至少与IEEE 754双精度算术一样精确。 输入将在您的语言的本机整数类型的可表示范围内,而输出将在您的语言的本机浮点类型的可表示范围内。 n将始终为正。 输出的顺序无关紧要。 测试用例 格式: n_s, n_f => lower, upper 0, 1 => 0.0, 0.7934567085261071 1, 0 => 0.20654329147389294, 1.0 1, 1 => 0.09452865480086611, 0.905471345199134 1, 10 => 0.016231752262825982, 0.3773646254862038 10, 1 => 0.6226353745137962, …

3
高尔夫小数
您的目标是编写一些代码,该代码将为输入分数输出最短的唯一十进制序列。分母相同的两个分数都不能具有相同的输出,尽管分母不同的分数可能具有相同的表示。 以2个整数作为输入,第一个是分子,第二个是分母。 例如: n d output ----- ------ 0 13: 0.00 1 13: 0.07 2 13: 0.1 3 13: 0.2 4 13: 0.30 5 13: 0.38 等等 3/13是唯一以13开头的分母为13的分数0.2,因此不需要其他数字。4/13和5/13两个下手0.3,所以需要另一个数字来区分它们。 您可以输出大于-1且小于1的数字,小数点前有零或无零,只要输出是一致的,即0.5和.5是相同的数字并且都有效。不允许其他前导零。如果必须使用尾随零来将输出与另一个值区分开,则必须显示尾随零。 您不得将任何数字都舍入为零。他们必须被截断。不得有前导或尾随空格。可能有一个结尾的换行符。 更多测试值: n d output ---------- ------ 0 1: 0 (this 0 may not be removed because there's no decimal point) …

9
所有异种
介绍 在基体A xenodrome Ñ是整数,其中所有其在碱位数Ñ是不同的。这是异种的一些OEIS序列。 例如,在底座16, FACE,42和FEDCBA9876543210是一些xenodromes(哪些是64206,66和18364758544493064720在基座10),但11并DEFACED不是。 挑战 给定输入底数n,在底数10中输出该底物的所有异种。 输出应从最小到最大。应该清楚序列中的一个术语在何处结束而一个新的术语在何处开始(例如[0, 1, 2],清楚012不在哪里。) n将是一个大于0的整数。 澄清说明 这项挑战专门针对以10为基数的IO,以避免将整数及其基数作为字符串处理。挑战在于抽象地处理任何基础。因此,我添加了以下附加规则: 整数不能以字符串形式存储在以10为基数的基数中。 如果在语言实现上没有时间,内存,精度或其他技术限制,则您的程序在理论上应该能够处理合理的n。 这是代码高尔夫,因此以字节为单位的最短程序胜出。 输入和输出示例 1 # Input 0 # Output 2 0, 1, 2 3 0, 1, 2, 3, 5, 6, 7, 11, 15, 19, 21 4 0, 1, 2, 3, 4, 6, 7, 8, 9, …

22
除数不多的除法
写一个程序或函数,它在正整数a,b并c,并打印或返回a/b到c小数位,使用操作+ - * /%[加,减,乘,除,调制]在正整数:您可以使用所有您的语言允许,但不能使用浮点数。a,b,c的范围将是您语言中无符号整数所允许的范围。数字结果将被截断为最后一个要打印的数字(所以没有round)。 这意味着,如果您的语言没有整数类型(仅浮点数),则可以通过将这些浮点数仅用作正整数来参与。本练习的线索是编写仅在[无符号]整数上使用+-* /%运算来找到浮点数中的数字的函数。 例子 print(1,2,1) 会打印 0.5 print(1,2,2) 会打印 0.50 print(13,7,27) 会打印 1.857142857142857142857142857 print(2,3,1) 会打印 0.6 print(4,5,7) 会打印 0.8000000 print(4,5,1) 会打印 0.8 print(9999,23,1) 会打印 434.7 print(12345613,2321,89) 如果您的语言具有32位未签名,将打印 5319.09220163722533390779836277466609220163722533390779836277466609220163722533390779836277466 以字节为单位的最短代码获胜。如果这看起来不清楚,我很抱歉。测试一些与建议不同的输入。

15
最终号码
挑战 编写一个程序,该程序接受一个由4个整数组成的数组(表示由某种算法生成的数字序列),并返回随后的下一个整数。 我们将只使用简单的加,减,乘和除法算法,该算法具有恒定的(即不变的)变化。 对于除法,我们将使用floor整数值:133/4 = 33和33/4 = 8 您可以假设总会有一个有效的返回值 测试用例 [14,24,34,44] 应该返回54(加法算法) [105,45,-15,-75] 应该返回-135(减法算法) [5,25,125,625] 应返回3125(乘法算法) [256,64,16,4] 应该返回1(除法算法) 通用规则 这是代码高尔夫球,因此最短的答案(以字节为单位)将赢得挑战。 禁止出现标准漏洞
15 code-golf  number 

30
在不使用内置函数的情况下查找数组中的最小和最大整数
挑战 给定一个从stdin,函数参数,程序参数或其他方法接收的整数数组: 输出只在阵列中的最小和最大数目,通过一个返回值,标准输出,或其它拟合方法。 会话示例 > minmax( {0, 15, 2, 3, 7, 18, -2, 9, 6, -5, 3, 8, 9, -14} ) -14 18 参考实施 // C++14 void minmax(std::vector<int> v) { int min = v[0]; int max = v[0]; for(auto it : v) { if (*it < min) min = *it; …

14
推导其指数生成函数为正切的序列
几乎每个函数都可以表示为具有无限项的多项式。 例如, e^x = 1 + x + x^2/2! + x^3/3! + x^4/4! + ... 例如, sin(x) = x - x^3/3! + x^5/5! - x^7/7! + ... n第-个项的系数形成一个序列,相应的函数称为生成函数该序列。 的系数 n第-项形成一个序列。 通常,n-th项的分母为n!。因此,我们将系数乘以n!得到另一个序列,该序列的指数生成函数将是原始函数。 例如,其指数生成函数为的序列e^x将为1,1,1,1,...。 例如,其指数生成函数为的序列sin(x)将为0,1,0,-1,0,1,0,-1,...。 任务 您的任务是找到指数生成函数为n的序列的第n个项。tan(x) 测试用例 n result 0 0 1 1 2 0 3 2 4 0 5 16 …

10
整数序列中的代码字
介绍 Pareidolia:来自古希腊语;παρα(para,“并发,并排”)+ εἴδωλον(eídōlon,“ image”)。倾向于将模糊的刺激解释为观察者已知的东西,例如将火星上的标记解释为运河,看到云中的形状或听到音乐中的隐藏信息。资料来源:维基词典。 例如: 旁白:来自古希腊;παρα(para,“并发,并排”)+ λόγος(lógos,“语音,演说,单词,...”)。倾向于以任意字符序列感知单词,例如在代码高尔夫程序中。资料来源:是的,我编造了这个词(实际上,@ Martin指出,该词还具有其他含义)。 例如: df4$/H)hEy_^p2\ jtK2$)look|x1$ 挑战 编写一个程序,以正整数作为输入,生成一个整数作为输出,并在代码中包含一个英文单词。输入输出关系必须对应于OEIS中可以找到的整数序列。 规则 仅允许该列表中的单词。诚然,这是任意的,但至关重要的是,我们都同意接受哪些词。就此而言,此列表可能与其他列表一样好。 单词需要通过串联至少两个函数名称或语句来形成。例如,如果您的语言具有一个称为的函数correlation,则不能原样使用。串联必须严格:单词的各个部分之间不应出现其他符号。例如,bro~ken不会算作单词。 案例是不重要的:既valid和vaLiD是可以接受的。 字符串中的单词不计算在内。组成单词的字母必须是所选语言中的函数或语句,即实际执行的东西。例如,将不允许以下代码:'deoxyribonucleic'~1,其中'...'为字符串,~丢弃先前的内容,1仅打印number 1。 单词的每个字母都应该是必要的。这意味着从单词中删除单个字母应该会更改输入输出关系。这包括输出不同的序列,或输出任何其他东西,或不产生输出,或引起错误。 除数据类型或内存限制外,任何正整数都应可接受作为输入,并应产生输出。 对应于输入的输出1,2,3,...应当对应于出现在序列OEIS。不应产生其他输出;仅整数,可能带有尾随或前导空格。 输入和输出可以是函数参数或stdin / stdout。 得分了 分数计算为总代码长度减去最长单词长度(以字符为单位)的两倍。或等效地,非最长单词字符数减去最长单词的长度。 最低分获胜。 例子 考虑一种具有以下功能的假想后缀语言c:At:计算平方;$:加1。 cAt将是一个有效的程序(其输出对应于序列1,4,9,...,这是A000290),它会有得分-3。 cAt$也将是有效的(序列2,5,10,...,这是A002522),与分数-2。 c$At 无效,因为这里唯一的单词是“ At”,并且是由单个函数或语句产生的。
15 code-golf  number  word 

3
标记基于堆栈的语言
我一直在研究另一种称为Stackgoat的基于堆栈的高尔夫语言。在这个挑战中,您将为Stackgoat(或实际上是任何通用的基于堆栈的语言)编写Tokenizer。 例子 "PPCG"23+ ["PPCG", '23', '+'] 'a "bc" + ['"a"', '"bc"', '+'] 12 34+-"abc\"de'fg\\" ['12', '34', '+', '-', '"abc\"de'fg\\"'] "foo ['"foo"'] (empty input) [] ' "" ['" "', '""'] 规格 您需要处理的三种类型是: 弦乐,什么内"" 数字,任何数字序列 运算符,除空格外的任何其他单个字符 除非将其留在字符串中或将两个数字分隔开,否则实际上将忽略空格。 字符串/字符规范: 字符串以分隔",当\遇到时,下一个字符应转义。 字符前面加a ',后面的字符'应转换为字符串文字。'a->"a" ' 后面总会有一个角色 右引号应自动插入 规则: 没有形式eval允许 输入输出: 可以通过STDIN,函数参数或您的语言等效输入。 输出应为数组或您的语言最接近的等效数组。
15 code-golf  parsing  code-golf  hexagonal-grid  code-golf  string  code-golf  string  code-golf  combinatorics  code-golf  ascii-art  code-golf  string  game  counting  code-golf  arithmetic  complex-numbers  code-golf  string  code-golf  decision-problem  hexagonal-grid  code-golf  string  sequence  code-golf  number  arithmetic  code-golf  ascii-art  code-golf  ascii-art  code-golf  string  arithmetic  code-golf  number  simulation  code-golf  number  arithmetic  code-golf  string  sequence  unicode  code-golf  string  ascii-art  balanced-string  code-golf  number  clock  code-golf  ascii-art  number  code-golf  math  number  sequence  code-golf  string  ascii-art  balanced-string  code-golf  math  string  popularity-contest  graphical-output  image-processing  code-golf  string  permutations  code-golf  string  code-golf  random  code-golf  string  cryptography  palindrome  code-golf  chess  code-golf  math  array-manipulation  topology  code-golf  math  sequence  code-golf  keyboard  classification  code-golf  string  sequence  code-golf  natural-language  code-golf  math  number  sequence  sorting  code-golf  sequence  combinatorics  grid  tic-tac-toe  code-golf  geometry  code-golf  number  restricted-source  new-years  expression-building 

8
最小总和为n的数字
这里的第一个问题,如果这是重复的或不好的挑战,请不要对我大喊。 介绍 我自己想到了这个挑战,对于初学者来说,这似乎是一个很好的基本难题。这也可能有助于我确定要学习哪种编码语言。 挑战 给定一个小于或等于整数n的数组,从数组中输出或返回最小数目的精确求和n。 您可以选择编写函数或完整程序。 输入值 您可以放心假设0 <= n < 2^31。 接受任何类型的数组或列表(允许vector用于C ++或Java LinkedList),以及n一个可选参数length,该参数指定数组的长度。 您还可以将输入作为用空格分隔的字符串,并n用逗号或空格分隔: 1 5 7 3 7 3 6 3 2 6 3,10 1 5 7 3 7 3 6 3 2 6 3 10 如果更容易。 输出量 输出或从数组中返回总和恰好为的最小数目的数字n。使用上面的示例: 1 5 7 3 7 3 6 3 …

12
由五角形数构成的五角形数
介绍 甲五角数(A000326)由公式生成P Ñ = 0.5×(3N 2 -n) 。或者,您可以只计算使用的点数: 您可以使用公式或上面的gif查找前几个五边形数字: 1, 5, 12, 22, 35, 51, 70, 92, 117, 145, 176, 210, 247, 287, 330, 376, 425, 477, etc... 接下来,我们需要计算x个连续数字的总和。 例如,如果x = 4,我们需要查看P n + P n + 1 + P n + 2 + P n + 3(由4个项组成)。如果五角形的总和也是五角形,我们将其称为五角形五角形。 对于x = …

20
缩短已经很短的数学表达式
一次,我做了一些实际的工作,更新了旧代码,碰到了一个表达式,该表达式等于在老式数学中用πx+ e x编写的表达式。我认为编写它的时间可能比使用我使用的语言(APL)编写的时间短,因此提出了一个非常简单的挑战: 编写一个函数或程序(以任何方式)接受零个或多个数字,并返回(以任何方式)x = 每个给定数字的上述表达式的结果,每个结果至少具有3个有效数字。 如果您的语言没有π和/或e,请使用值3.142和2.718。 得分是字节数,因此请以开头# LanguageName, 00 bytes。 不允许使用标准孔。 编辑:现在,我想出了一个解决方案,○+*,已被发现。原始代码为(○x)+*x。
15 code-golf  math  number  pi 

16
简单任务解决三次
您应该用一种语言编写3个程序和/或功能。 所有这些程序都应解决相同的任务,但它们都应提供不同(但有效)的输出。(即,对于每对程序,它们都应该是一些输入,这些输入会生成不同(但有效)的输出编号集。) 任务 您得到一个n大于1 的整数 您应该返回或输出n 不同的正整数,并且它们都不能被整除n。 数字的顺序无关紧要,数字的排列也不视为不同的输出。 有效的三元组程序,其中包含一些input => output配对: program A: 2 => 5 9 4 => 5 6 9 10 5 => 2 4 8 7 1 program B: 2 => 1 11 4 => 6 9 1 2 5 => 4 44 444 4444 44444 program …

7
平均角度
故事,或者我们为什么要这样做。 没有。除非斯蒂芬霍金(Stephen Hawking),否则这个练习是毫无意义的。 挑战 给定一个角度列表,找到这些角度的平均值。例如,91度和-91度的平均值为180度。您可以使用程序或函数来执行此操作。 输入值 表示角度量度的度值列表。您可以假设它们将是整数。它们可以以任何方便的格式输入或作为函数参数提供。 输出量 输入值的平均值。如果发现平均值有多个,则仅输出一个。平均值定义为 被最小化。输出必须在(-180,180]范围内,并且至少精确到小数点后两位。 例子: > 1 3 2 > 90 -90 0 or 180 > 0 -120 120 0 or -120 or 120 > 0 810 45 > 1 3 3 2.33 > 180 60 -60 180 or 60 or -60 > 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.