571
\$\开始组\$

在这个“沙盒”中,Code Golf用户可以获得关于他们希望发布到main上的潜在挑战的反馈。这很有用,因为在第一次尝试时编写一个明确且完全指定的挑战可能会很困难,而且如果你先在沙箱中发布挑战,那么你的挑战很有可能获得好评。

沙盒常见问题

邮寄

要发布到沙盒,请滚动到本页底部然后单击“回答此问题”。当它询问您是否真的想添加另一个答案时,请单击“确定”。

写下你的挑战,就像你真正发布它时一样,尽管你可以选择在顶部添加标题。在发布之前,你还可以添加一些关于你想澄清的具体事项的注释。其他用户将通过评级和讨论帮助你改进挑战。

当你认为你的挑战已经准备好面向公众时,继续前进发布它、和用挑战链接替换此处的帖子,并删除沙箱帖子。

讨论

沙箱的目的是提供和接收关于帖子的反馈。如果你愿意,可以随时对你在这里看到的任何帖子提供反馈。要评论的重要事项包括:

  • 您发现部分挑战不清楚
  • 针对提案中提到的具体问题的评论
  • 可能使挑战变得无趣或不适合网站的问题

审查沙箱帖子不需要任何资格。大多数挑战的目标受众都是像你这样的代码高尔夫球手,所以你发现的任何不清楚的事情都可能对其他人来说不清楚。

如果你认为你的一篇帖子需要更多反馈,但它被忽视了,你可以在第十九字节。这不仅是允许的,而且强烈推荐!耐心点,尽量不要唠叨别人,你可能要问很多次。

建议您将帖子放在沙箱中至少几天,直到收到赞成票和任何反馈。

其他

搜索沙盒/浏览您的待定提案

如果按以下方式对帖子进行排序,沙盒的工作效果最佳积极的

要将内联标记添加到建议中,请使用带有前缀的快捷链接语法:[标签:山中之王]。要搜索带有特定标记的帖子,请将名称括在引号中:“山中之王”

\$\端组\$
2
  • \$\开始组\$ 如果我很久以前就在沙箱上发布了帖子,但没有得到回应怎么办? \$\端组\$
    – 无1
    评论 5月15日14:05
  • \$\开始组\$ @没有1如果你有一段时间没有得到反馈,你可以请进第十九个字节 \$\端组\$ 评论 5月29日13:27

4705个答案4705

重置为默认值
1
2 4 5
157
0
\$\开始组\$

绘制卫星的地面路径

如果您将绕物体旋转的卫星建模为一个点,您可以很容易地看到它有6个自由度:三个自由度用于X、Y和Z位置,三个用于X、Y和Z速度。然而,这并不能告诉你轨道是什么样子的,所以我们通常用6个描述性变量来定义轨道,称为“轨道元素':

轨道元素图像

你不关心的事情:升序节点()是指物体穿过赤道平面的点,因此之后它位于赤道平面之上。参考方向(♈︎)是赤道平面上保持不变的向量,因此在不同的物体上可能有不同的定义。地球参考方向春分

用于定义轨道的六个元素(通常)是:

  • e(电子):偏心率。轨道的拉伸程度或圆形。
  • :半主轴线.轨道的大小。
  • :倾角轨道平面和赤道平面之间的角度。
  • Ω:升交点经度.参考方向和赤道平面上上升节点之间的顺时针角度(从Z轴正/北极看)。
  • ω:围绝经期论证。通过升序节点到近囊(最近的方法)。
  • ν:真异常.通过近点到卫星的角度。

如果你仔细看,你可以看到其中的两个(Ων)绘制纬度/经度点时很无聊,因为它们只是将图形向左或向右移动。为了纠正这一点,我们将这两个参数设置为零(例如节点线==参考方向&卫星从近角开始),并将其替换为标准引力参数 μ以及恒星日 .这样我们就把所有地球同步轨道在图形轴后面,因此我们还需要定义初始时间,这将是自上次太阳正午在身体春分点的纬度为0°。(例如,自0°纬度与参考方向对齐以来的时间)

有用的方程式(或者:我该如何处理所有这些输入?)

(原谅这个双关语^^)

半径:\$r=\压裂{a(1-e^2)}{1+e\cosν}\$

速度\$r’=\sqrt{\mu\left(\frac{2}{r}-\frac}{a}\right)}\$

加速度:\$\vec r''=-\frac{\mu}{r^3}\vec r\$

轨道周期:\$T=2\pi\sqrt{\frac{a^3}{\mu}}\$

坐标传输自焦点周围赤道的:

\$\begin{bmatrix}x_e\y_e\\z_e\\end{bmatricx}=\begin{bmatriax}\cosΩ&-\sinΩ&0\\sinΩ&\cosω&0\\0&0&1\end{bmatrix}\,\begine{bmatriex}1&0&0\\0&\cos i&-\sini\\0&\sin i&\cosi\end{bmmatrix}\,\ begin}bmatricxω\cos&\cosω&0\\0&0&1结束{bmatrix}\,开始{bmatricx}x_p\\y_p\\0\\end{bmatrix}\\=\begin{bmatrix}\cosΩ\cosω-\sinΩ\cos-i\sinω-\cos欧姆\sinΩ\sinΩ\ cos i\sosω&\sinΩ_sin i\\sinΩ\cosω+\cos欧\cos i\ sinω-\ sinΩ+\ cosΩ\ cos-i\cos ome&-\cosΩ\sin i\\ sinΩ&\sin i\cos-ω&\cos i \\end{bmetrix}\ begin bmatrix}x_p\\y_p \0\\end{bmatrix}\\\;\\\large\textsf{对于我们来说,因为我们使用的是Ω=0,所以可以简化为:}\\;\\=\开始{bmatrix}1&0&0\\0&\cosi&-\sin i\\0&\sin i&\cos i\end{bmatricx}\,开始{bmmatrix}\cosω&-\snω&0\\sinω&\cosω0\\0&0&1\end{bmatrix}\\cosω&-\sin\omega&0\\cos i\sin\ω&\cos i\cos\omega&-\sin i\\sin\omega&\sin i\cos\omega\\end{bmatrix}\begin{bmatricx}x_p\\y_p\\0\\end{bmatrix}\$

发件人ECEF公司纬度/经度:\$\lambda=\operatorname{atan2}(y_e,x_e),\phi=\frac{z_e}{\sqrt{x_e^2+y_e^2+z_e^2]}\$

有很多方法可以完成这个挑战,但现在我将概述两种理论上可以设置程序的方法,因为人们以前曾抱怨过我只做了一种。

方法一:长征
这种方法利用一个简单的加速度方程和初始条件来追踪曲线。首先选择一些小Δt作为步长。将速度*Δt加到位置上,然后将加速度*Δt加到速度上。继续这样来回移动,你会得到一个时间间隔均匀的点列表。使用这种方法,无论你能在行进之前还是之后从近焦转换到赤道,都无关紧要。一旦你有了赤道坐标,你就可以用物体的角速度乘以坐标指向该点的文字时间(例如t+Δt*点编号)来绕z轴旋转每个点。这会将您的观点纳入ECEF(或BCBF?),您可以使用最后一个等式以lat/long结束。

方法二:弯曲曲线
这种方法利用了这样一个事实,即我们有极坐标下曲线的完整方程和速度方程。首先,您想通过将r和ν替换为sqrt(x^2+y^2)和atan2(y,x)来获得焦周坐标。然后,将近焦点坐标转换为赤道坐标。最后,从近点开始,以Δt*r’大小的步长沿着曲线旋转,以角速度乘以对应于该点的文字时间(例如,t+Δt*点编号)旋转到达的每个点。这会将您的观点纳入ECEF(或BCBF?),您可以使用最后一个等式以lat/long结束。

I/O要求

输入

7个总输入:偏心率、半长轴、倾斜度、周期论证、标准引力参数、恒星日长度和初始时间。

你可以按照你想要的顺序,以你想要的形式接受它们。你甚至可以用等效的结构来交换单个元素,例如,将一个真正的异常或平均异常作为输入,而不是初始时间。

输出

这是一个挑战,所以您应该输出赤道的(不是大地测量学的)卫星地面路径的经纬度。(所以从技术上讲是赤纬而不是纬度,但lat/long是每个人都熟悉的)

如果你的语言没有图形概念,比如bf或sed,那么首先为什么你会选择这种语言来应对这个挑战,其次输出一个lat/long点列表就可以了。(@sandbox:这主要是为了让高尔夫语言竞争,有更好的替代品吗?)

你的图应该涵盖轨道周期和恒星日长度的lcm的时间段。这意味着您正在绘制轨道的完整地面路径,因为在此之后它只会重复。如果您沿着曲线前进,请尽量将错误保持在足够低的水平,使其末端看起来像是连接到所提供测试用例的起点。

边缘案例

我们没有太多涉及边缘情况,但一般来说,如果一个值未定义,它将被输入为0,您可以将其视为代码中的0。例如,如果偏心率为0(表示ω未定义),则应将“近点”视为与升序节点重合。

偏心率、近心点参数和倾斜度保证为非负数,分别小于1、360和180;保证半长轴、标准引力参数和恒星日长度为正值;初始时间保证为非负。它们都保证是有理数,你可以把它们作为输入(例如,如果你不能把输入作为分数,你就不会得到像5/3这样的数字)

这是,因此每种语言中的最低字节获胜

测试用例

输入:

e=.737a=26553i=63.4ω=270μ = 398600I=86164t=19147

输出(molniya轨道):Molniya_轨道

输入:

e=.1a=42164i=10ω = 20μ = 398600I=86164t=0

输出(地球同步轨道):地球同步轨道

输入:

e=0a=1i=90ω = 0μ=39.5(=(2pi)^2)I=2t=0

输出:另一个轨道

输入:

e=0a=1i=0ω = 0μ = 39.5I=1t=0

输出([非地理,但]-静止轨道):静止轨道

输入:

e=0.5a=1i=50ω = 0μ = 39.5I=1t=0

输出:情节看起来像无穷大

输入:

e=0.75a=2i=130ω = 180μ = 79I=1t=0.5

输出:另一个情节

输入:

e=0.5a=2i=40ω = 180μ = 79I=5t=1.25

输出:下一个图号

输入:

e=0.5a=40i=60ω = 180μ = 787I=20t=0

输出:纯轨道

\$\端组\$
0
\$\开始组\$

检查非递减字符串并创建递减响应的非递减代码

让我们将非递减字符串定义为具有非递减Unicode值的字符串,将递减字符串定义为由递减Unicode数值组成的字符串。

您的任务是编写一个由一行或多行非递减行组成的程序。程序检查字符串是否为非递减字符串,并打印(或返回)已确定当字符串不减少时,减少超过1个字符的字符串,然后再减少另一个字符已确定当字符串为非递减字符串时,包含1个以上字符的递减字符串。(已确定表示允许打印文学士当字符串非递减时,以及预计起飞时间如果字符串不是,但不允许打印随机递减的字符串)。

规则是这样的,但不同的是,您的目标是最小化源代码中的字节数*源代码中行数/

\$\端组\$
0
\$\开始组\$

扫雷板

给定一个\百万美元×百万美元\$扫雷车密度图,生成地雷图,其中\$1\$代表地雷,\$0\$不代表我的。

测试用例

[8,8]#对应于m×n,其中m是行数,n是列数密度图:0 0 1 1 0 0 0 00 5 2 2 4 0 0 00 5 0 2 3 0 7 03 0 0 4 4 0 0 44 0 0 5 0 0 0 00 0 0 0 4 0 0 40 0 0 5 4 6 0 30 0 0 3 0 0 0 2矿山地图:1 1 0 0 1 1 1 1 1 11 0 0 0 0 1 1 11 0 1 0 0 1 0 10 1 1 0 0 1 1 00 1 1 0 1 1 1 11 1 1 1 0 1 1 01 1 1 0 0 0 1 01 1 1 0 1 1 1 0[40, 50]密度图:2 3 2 3 0 3 0 0 3 3 0 4 0 2 1 0 2 2 0 2 0 3 0 2 3 0 3 2 0 0 0 0 4 3 0 3 0 0 0 0 0 5 0 0 0 4 0 0 1 00 0 0 5 0 4 4 0 5 0 0 7 0 5 3 4 0 5 4 5 5 0 5 4 0 0 0 3 4 0 6 0 0 0 5 0 5 6 0 0 0 0 0 0 0 0 5 3 2 04 0 0 0 3 0 4 5 0 0 0 0 0 0 0 6 0 0 0 0 0 0 0 0 3 4 0 3 4 0 5 3 4 4 0 0 4 0 0 6 0 6 0 0 7 0 4 0 3 22 0 0 6 5 5 0 0 0 4 5 0 0 6 0 0 0 0 7 0 0 5 4 4 3 3 3 0 3 0 0 2 3 0 7 0 5 5 0 4 2 0 3 4 0 0 3 3 0 02 5 0 0 0 0 0 5 4 2 4 0 4 3 0 5 0 0 6 0 4 4 0 5 0 0 4 2 2 2 3 0 3 0 0 0 4 0 0 4 2 2 3 4 0 5 4 4 0 40 4 0 0 6 0 6 0 3 0 4 0 4 2 2 4 5 0 0 3 3 0 0 0 0 0 0 2 1 2 2 3 3 5 0 0 3 3 0 0 3 2 0 0 5 0 0 0 5 00 4 3 2 3 0 0 4 0 4 6 0 0 2 2 0 0 4 3 3 0 3 5 0 0 4 3 4 0 4 0 3 0 5 0 3 2 3 5 0 0 3 5 0 7 0 0 0 5 03 0 3 2 3 5 0 4 2 0 0 5 3 0 4 4 0 4 3 3 4 4 3 3 0 0 4 0 4 0 4 3 4 0 4 3 0 0 0 0 0 0 0 0 5 33 0 4 0 0 5 0 3 1 4 0 0 0 5 4 0 4 0 0 0 5 0 0 5 0 3 0 0 6 0 0 3 5 0 5 0 0 0 0 4 3 0 6 7 0 7 6 6 0 04 0 4 3 4 0 0 4 2 5 0 0 0 0 0 4 0 0 5 0 0 0 0 5 0 5 5 5 0 4 4 3 0 0 0 6 0 0 0 0 4 0 0 0 0 0 0 0 0 00 0 3 2 0 4 0 5 0 0 0 6 5 4 5 0 5 3 2 2 4 4 4 0 4 0 0 0 3 0 2 0 5 0 7 0 0 0 0 0 5 6 0 0 0 0 5 0 5 02 3 4 0 4 4 4 0 0 0 0 0 3 0 4 0 0 2 2 1 3 0 4 4 0 6 0 5 3 2 4 4 5 0 0 0 4 4 0 5 0 0 0 0 7 5 5 4 5 31 3 0 0 5 0 0 3 4 5 0 0 3 3 0 6 5 0 4 0 4 0 0 5 0 5 0 0 2 3 0 0 0 6 0 5 2 1 3 0 7 0 0 0 0 0 0 0 0 03 0 0 0 5 0 4 3 3 0 4 4 2 4 0 0 0 4 0 0 4 4 6 0 0 4 2 3 3 0 0 0 5 0 0 0 3 2 4 0 0 0 0 6 0 6 0 0 0 40 0 6 0 3 2 3 0 0 5 0 4 0 4 0 0 0 5 5 5 4 0 0 0 0 3 1 2 0 5 0 0 5 4 6 0 0 5 0 0 5 4 3 5 0 5 4 0 5 00 5 0 4 2 1 0 4 4 0 0 5 0 5 4 5 5 0 0 0 0 4 5 0 3 3 0 4 3 4 0 0 0 2 0 0 0 0 0 0 3 2 0 3 0 3 0 4 0 41 3 0 0 4 3 3 0 3 4 4 4 0 5 0 0 3 0 0 6 4 0 3 3 4 5 0 0 2 0 5 0 4 3 4 6 0 5 5 5 5 0 5 4 2 2 1 4 0 01 2 4 0 0 0 4 2 2 0 0 4 4 0 0 6 5 6 0 0 4 3 3 0 0 0 0 5 3 2 4 0 3 2 0 0 3 4 0 0 0 0 0 0 3 2 2 5 0 50 2 3 0 6 0 0 2 2 3 0 3 0 0 0 0 0 0 0 0 0 2 0 5 5 6 0 0 1 1 0 3 3 0 4 4 0 3 0 7 0 0 6 0 0 5 0 0 0 02 4 0 4 4 0 5 0 3 4 3 4 5 0 7 7 0 8 0 6 4 4 3 0 0 4 0 4 3 4 5 0 4 4 0 4 3 4 3 0 0 4 0 4 0 0 0 7 6 43 0 0 0 4 4 0 5 0 0 0 2 0 0 0 0 0 0 0 5 0 0 4 5 0 5 2 4 0 0 0 0 5 0 0 5 0 0 5 5 5 4 2 3 5 0 0 0 0 00 0 0 0 4 0 0 0 7 0 5 4 5 5 4 4 5 6 0 4 0 0 4 0 0 3 0 4 0 4 4 5 0 0 0 0 5 0 0 0 0 0 4 3 0 0 6 0 0 00 5 5 0 4 4 0 0 0 0 5 0 0 0 2 2 0 0 3 3 4 6 0 5 4 4 3 0 3 3 3 0 0 6 4 4 0 6 0 0 0 0 0 0 6 4 4 0 0 04 0 4 4 0 5 5 0 0 0 0 6 5 4 0 3 4 0 3 2 0 0 0 3 0 0 2 3 0 4 0 0 0 0 3 5 0 0 6 0 0 6 6 0 0 0 5 6 0 00 0 0 4 0 0 0 6 0 0 0 0 0 4 4 5 0 3 2 0 5 0 5 4 3 3 3 5 0 0 4 5 0 7 0 0 0 5 0 0 6 0 0 4 0 0 0 0 0 00 0 4 5 0 7 0 6 0 6 0 5 3 0 0 0 0 4 3 5 0 6 0 0 4 3 0 0 0 0 3 4 0 0 0 0 4 4 0 0 0 6 5 4 4 5 0 0 0 40 4 3 0 0 6 0 0 4 5 0 4 2 3 3 5 0 6 0 0 0 0 0 0 0 0 4 0 0 5 3 0 0 0 0 0 4 4 0 0 0 0 0 0 4 0 5 0 0 41 3 0 6 0 5 0 0 5 0 0 5 0 3 2 4 0 0 0 6 0 6 6 0 0 5 3 5 0 0 3 4 0 8 0 6 0 0 4 3 5 0 0 0 0 2 4 0 0 02 5 0 0 5 0 5 5 0 6 0 0 2 0 0 7 0 4 0 6 0 4 0 3 0 0 4 3 0 0 0 4 0 2 0 0 6 3 2 3 0 0 30 0 0 0 6 0 4 0 0 0 0 5 0 5 4 4 0 0 4 5 0 0 0 0 5 0 4 3 4 0 0 5 4 6 0 5 4 3 3 2 3 5 0 0 2 3 0 6 4 20 0 7 0 0 3 0 5 0 5 3 5 0 0 3 0 5 4 0 0 0 0 0 0 5 0 4 0 2 4 0 0 0 5 0 6 0 0 4 0 0 4 0 5 0 5 0 0 0 10 0 4 0 4 3 4 0 4 3 0 4 0 5 4 0 3 4 6 0 0 4 0 4 3 4 0 5 3 0 0 0 4 0 7 0 4 0 5 0 0 0 6 33 3 3 3 4 0 5 0 0 3 2 4 0 3 0 5 5 0 4 0 0 0 4 3 0 4 4 0 0 5 0 3 2 3 5 4 3 3 5 0 0 0 0 3 3 6 0 0 0 00 3 3 0 0 6 0 0 0 4 2 0 3 4 5 0 0 5 0 0 5 0 4 4 0 0 4 0 6 0 0 3 2 0 3 0 3 2 0 0 0 0 5 4 0 0 0 0 0 00 0 4 0 0 0 0 0 0 4 0 3 4 0 0 0 0 4 0 4 4 3 0 0 7 0 5 3 0 0 5 4 0 5 6 0 0 4 4 5 0 0 0 4 0 0 0 0 6 03 4 0 5 0 6 5 0 0 5 3 3 0 0 0 0 5 4 4 0 4 0 5 0 0 0 0 2 3 0 4 0 0 0 0 0 0 0 3 0 6 0 6 0 5 5 0 3 3 00 5 4 5 0 5 0 5 0 0 3 0 5 0 0 0 0 2 0 0 0 3 4 0 0 7 4 3 2 2 4 0 7 0 0 0 6 0 3 3 0 0 7 0 4 0 3 2 1 10 0 0 0 4 0 0 6 4 5 0 3 3 0 0 0 4 3 4 0 0 4 4 0 0 0 0 3 0 1 3 0 5 0 4 4 0 4 3 4 0 0 0 0 6 4 0 3 2 10 0 4 2 3 0 0 0 0 5 0 5 4 5 0 0 3 2 0 6 0 0 5 0 0 7 6 0 3 2 4 0 5 2 3 3 0 0 5 0 0 8 0 0 0 0 4 0 0 30 3 1 0 1 2 3 4 0 4 0 0 0 0 3 2 2 0 3 0 0 0 0 4 0 0 0 0 2 1 0 0 3 0 2 0 4 0 0 0 0 0 0 4 3 2 3 0 0 0矿山地图:0 0 0 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0 1 0 1 0 1 0 0 1 0 0 1 1 1 1 0 0 1 0 1 1 1 1 1 0 1 1 1 0 1 1 0 01 1 1 0 1 0 0 1 0 1 1 0 1 0 0 0 1 0 0 0 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 0 0 1 1 1 1 1 1 1 1 0 0 0 00 1 1 1 0 1 0 0 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 0 1 0 0 1 0 0 0 0 1 1 0 1 1 0 1 0 1 1 0 1 0 1 0 00 1 1 0 0 0 1 1 1 0 0 1 1 0 1 1 1 1 0 1 1 0 0 0 0 0 0 1 0 1 1 0 0 1 0 1 0 0 1 0 0 1 0 0 1 1 0 0 1 10 0 1 1 1 1 0 0 1 0 1 0 1 0 1 0 1 0 1 0 1 1 0 1 1 1 0 0 0 1 0 1 1 1 0 0 0 0 1 0 0 0 1 0 0 0 0 1 01 0 1 1 0 1 0 1 0 1 0 1 0 0 0 0 0 1 1 0 0 1 1 1 1 1 1 0 0 0 0 0 0 0 1 1 0 0 1 1 0 0 1 1 0 1 1 1 0 11 0 0 0 0 1 1 0 1 0 0 1 1 0 0 1 1 0 0 0 1 0 0 1 1 0 0 0 1 0 1 0 1 0 1 0 0 0 0 1 1 0 0 1 0 1 1 1 0 10 1 0 0 0 0 1 0 0 1 1 1 0 0 1 0 0 0 1 0 0 0 0 1 0 0 0 1 1 1 0 0 1 1 0 0 0 1 1 0 0 0 1 1 1 1 1 1 0 00 1 0 1 1 0 1 0 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 0 1 0 1 1 0 1 1 0 0 1 0 1 1 1 1 0 0 1 0 0 1 0 0 0 1 10 1 0 0 0 1 1 0 0 0 1 1 1 1 1 0 1 1 0 1 1 1 1 0 1 0 0 0 1 0 0 0 1 1 1 0 1 1 1 1 0 1 1 1 1 1 1 1 1 11 1 0 0 1 0 1 0 1 1 1 0 0 0 0 1 0 0 0 0 0 0 0 1 0 1 1 1 0 1 0 1 0 1 0 1 1 1 1 1 0 0 1 1 1 1 0 1 0 10 0 0 1 0 0 0 1 1 1 1 1 0 1 0 1 1 0 0 0 0 1 0 0 1 0 1 0 0 0 0 0 0 1 1 1 0 0 1 0 1 1 1 1 0 0 0 0 0 00 0 1 1 0 1 1 0 0 0 1 1 0 0 1 0 0 1 0 1 0 1 1 0 1 0 1 1 0 0 1 1 1 0 1 0 0 0 0 1 0 1 1 1 1 1 1 1 1 10 1 1 1 0 1 0 0 0 1 0 0 0 0 1 1 1 0 1 1 0 0 0 1 1 0 0 0 0 1 1 1 0 1 1 1 0 0 0 1 1 1 1 0 1 0 1 1 1 01 1 0 1 0 0 0 1 1 0 1 0 1 0 1 1 1 0 0 0 0 1 1 1 1 0 0 0 1 0 1 1 0 0 0 1 1 0 1 1 0 0 0 0 1 0 0 1 0 11 0 1 0 0 0 1 0 0 1 1 0 1 0 0 0 0 1 1 1 1 0 0 1 0 0 1 0 0 0 1 1 1 0 1 1 1 1 1 1 0 0 1 0 1 0 1 0 1 00 0 1 1 0 0 0 1 0 0 0 0 1 0 1 1 0 1 1 0 0 1 0 0 0 0 1 1 0 1 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 1 10 0 0 1 1 1 0 0 0 1 1 0 0 1 1 0 0 0 1 1 0 0 0 1 1 1 1 0 0 0 0 1 0 0 1 1 0 0 1 1 1 1 1 1 0 0 0 0 1 01 0 0 1 0 1 1 0 0 0 1 0 1 1 1 1 1 1 1 1 1 0 1 0 0 0 1 1 0 0 1 0 0 1 0 0 1 0 1 0 1 1 0 1 1 0 1 1 1 10 0 1 0 0 1 0 1 0 0 0 0 0 1 0 0 1 0 1 0 0 0 0 1 1 0 1 0 0 0 0 1 0 0 1 0 0 0 0 1 1 0 1 0 1 1 1 0 0 00 1 1 1 0 0 1 0 1 1 1 0 1 1 1 1 1 1 1 0 1 1 0 0 1 0 0 0 1 1 1 1 0 1 1 0 1 1 0 0 0 0 0 0 0 1 1 1 1 11 1 1 1 0 1 1 1 0 1 0 0 0 0 0 0 0 0 1 0 1 1 0 1 1 0 1 0 1 0 0 0 1 1 1 1 0 1 1 1 1 1 0 0 1 1 0 1 1 11 0 0 1 0 0 1 1 1 1 0 1 1 1 0 0 1 1 0 0 0 0 1 0 0 0 0 1 0 0 0 1 1 0 0 0 1 0 1 1 1 1 1 1 0 0 0 1 1 10 1 0 0 1 0 0 1 1 1 1 0 0 0 1 0 0 1 0 0 1 1 1 0 1 1 0 0 1 0 1 1 1 1 0 0 1 1 0 1 1 0 0 1 1 1 0 0 1 11 1 1 0 1 1 1 0 1 1 1 1 1 0 0 0 1 0 0 1 0 1 0 0 0 0 0 0 1 1 0 0 1 0 1 1 1 0 1 1 0 1 1 0 1 1 1 1 1 11 1 0 0 1 0 1 0 1 0 0 1 1 1 1 1 1 0 0 1 0 1 1 0 0 1 1 1 1 0 1 1 1 0 1 1 1 0 0 0 0 1 1 1 1 1 1 1 01 0 0 1 1 0 1 1 0 0 1 0 0 0 0 0 1 0 1 1 1 1 1 1 1 1 0 1 1 0 0 1 1 1 1 1 0 0 1 1 1 1 1 1 0 1 0 1 1 00 0 1 0 1 0 1 1 0 1 1 0 1 0 0 0 1 1 1 0 1 0 0 1 1 0 0 0 1 1 0 0 1 0 1 0 1 1 0 0 0 1 1 1 1 0 0 1 1 10 0 1 1 0 1 0 1 1 0 1 1 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 0 1 1 1 1 0 0 1 1 0 0 1 1 0 0 0 1 1 01 1 1 1 0 1 0 1 1 1 1 0 1 0 0 0 1 1 0 0 1 1 1 1 0 1 0 0 0 1 1 0 0 0 1 0 0 0 0 0 0 0 1 1 0 0 1 0 0 01 1 0 1 1 0 1 0 1 0 0 0 1 1 0 1 0 0 1 1 1 1 1 1 0 1 0 1 0 0 1 1 1 0 1 0 1 1 0 1 1 0 1 0 1 0 1 1 1 01 1 0 1 0 0 0 1 0 0 1 0 1 0 0 1 1 0 0 0 1 1 1 0 0 1 0 0 0 0 1 0 0 1 1 1 1 0 1 1 0 1 0 0 1 0 1 1 0 00 0 0 0 0 1 0 1 1 0 0 0 1 0 1 0 0 1 0 1 1 1 0 0 1 0 0 1 1 0 1 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 1 1 1 11 0 0 1 1 0 1 1 1 0 0 1 0 0 0 1 1 0 1 1 0 1 0 0 1 1 0 1 0 1 1 0 0 1 0 1 0 0 1 1 1 1 0 0 1 1 1 1 1 11 1 0 1 1 1 1 1 1 0 1 0 0 1 1 1 1 0 1 0 0 0 1 1 0 1 0 0 1 1 0 0 1 0 0 1 1 0 0 0 1 1 1 0 1 1 1 1 0 10 0 1 0 1 0 0 1 1 0 0 0 1 1 1 1 0 0 0 1 0 1 0 1 1 1 1 0 0 1 0 1 1 1 1 1 1 1 0 1 0 1 0 1 0 0 1 0 0 11 0 0 0 1 0 1 0 1 1 0 1 0 1 1 1 1 0 1 1 1 0 0 1 1 0 0 0 0 0 0 1 0 1 1 1 0 1 0 0 1 1 0 1 0 1 0 0 0 01 1 1 1 0 1 1 0 0 0 1 0 0 1 1 1 0 0 0 1 1 0 0 1 1 1 1 0 1 0 0 1 0 1 0 0 1 0 0 0 1 1 1 1 0 0 1 0 0 01 1 0 0 0 1 1 1 1 0 1 0 0 0 1 1 0 0 1 0 1 1 0 1 1 0 0 1 0 0 0 1 0 0 0 0 1 1 0 1 1 0 1 1 1 1 0 1 1 01 0 0 0 0 0 0 0 1 0 1 1 1 1 0 0 0 1 0 1 1 1 1 0 1 1 1 1 0 0 1 1 0 1 0 1 0 1 1 1 1 1 1 0 0 0 0 1 1 1

获胜标准

时间测量将使用我的AMD Ryzen 9 7900X3D计算机和64GB RAM进行。
仅限\1美元\$核心被利用。
这是一场比赛语言。

这是一个最快的代码挑战。运行时性能最低对于\$2\$测试用例获胜! 如果许多代码段具有类似的运行时,将优先考虑最先提交的代码段。

新贡献者
哈东是此网站的新贡献者。请注意要求澄清、评论和回答。查看我们的行为准则
\$\端组\$
\$\开始组\$

计数被困的自动排空行走

想象一个由方形瓷砖组成的无限网格。你站在其中一块瓷砖上。您可以在一次移动中移动到四个基本相邻的磁贴中的任何一个,但不能两次踩在同一磁贴上。计算你被困的方式的数量,即四个相邻的瓷砖都被踩过的状态,精确到\n美元\$移动。为了考虑对称性,只计算第一次向右移动和第一次垂直向上移动的路径。

这是顺序A077482号:

1, 2, 11, 25, 95, 228, 752, 1860, 5741, 14477, 42939, 109758,317147, 818229, 2322512, 6030293, 16900541, 44079555, 122379267,320227677, 882687730, 2315257359, 6346076015, 16675422679,45502168379、119728011251、325510252108、857400725204。。。

这是一个挑战。提交一个程序,输出问题的答案\$n=7,8,9,10,\t吨\$,无限期。提交的分数最高\n美元\$他的答案一分钟后就打印在我当地的机器上了。得分最高者获胜;截至该期限的输出时间打破了平局。

我的本地计算机是Windows 10计算机,具有以下规格:

  • CPU:第12代Intel Core i7-12700(2.1GHz,12核)
  • 内存:32GB

如果提交无法在Windows上运行,您可以提供自己的度量,也可以使用在线代码执行服务,如TIO/ATO/Godbolt。我知道这并不理想,但目前我没有其他好的选择。

\$\端组\$
  • \$\开始组\$ 你能澄清一下你说的决胜局是什么意思吗?对我来说,这听起来和比分一样。 \$\端组\$ 评论 6月11日8:25
  • 1
    \$\开始组\$ @Themoonisachese在30秒内计算出n=20的提交将战胜在50秒内计算出n=20的另一个提交(如果在计算n=21之前两者都超时)。 \$\端组\$
    – 气泡器
    评论 6月11日23:29
  • \$\开始组\$ 我懂了。值得注意的是,在您的最终提交中,Corei7-12700有8个P-Core和4个E-Core,这可能会影响多线程。我认为这与说限制答案只使用8个核心无关,但我认为你仍然应该提到它。 \$\端组\$ 评论 6月12日8:30
2
\$\开始组\$

生成自由组的子组

\$\端组\$
2
  • \$\开始组\$ 解决方案是否有时输出为空,有时不输出?(使用空作为后备时发生) \$\端组\$ 评论 6月7日11:01
  • \$\开始组\$ @是的,虽然输出是无限的,但我想不出任何算法能做到这一点 \$\端组\$ 评论 6月8日6:29
1
\$\开始组\$

查找所有字符串中通用的字符

\$\端组\$
2
  • \$\开始组\$ 如果I/O灵活,为什么还要提到“阵列字符串”和“将它们作为数组返回”? \$\端组\$
    – 阿达姆
    评论 6月6日11:44
  • \$\开始组\$ 谢谢你,布鲁泽夫斯基先生,我概括了一下。☺️ \$\端组\$
    – 作记号
    评论 6月6日12:55
0
\$\开始组\$

找到最孤立的点

标签:

\$\端组\$
2
  • \$\开始组\$ 如果我的渐近时间复杂度同时取决于$P$和$T$的大小,我该如何替换代码的长度?虽然我没有仔细考虑这个计划,但我预计大多数(如果不是全部)解决方案都会出现这种情况。 \$\端组\$ 评论 6月4日16:39
  • \$\开始组\$ @RubenVerg说得好。我将更改评分标准,使其首先考虑时间复杂度,然后考虑字节数。 \$\端组\$
    – 碧宜轩
    评论 6月5日2:15
0
\$\开始组\$

扫雷器点击次数

给出扫雷器的地雷地图,输出赢得游戏至少需要多少次点击。

当点击显示的安全单元时,如果所有附近(3x3范围)的地雷都显示出来,那么所有附近的单元都会显示出来;点击未显示的单元格即可显示。

当任何一个细胞被暴露时,如果附近没有地雷(包括自己),所有附近的细胞都会被暴露。这可以递归地应用。

沙盒注释

我应该分开显示和标记吗?

\$\端组\$
2
\$\开始组\$

张贴:这是有效的PZN吗?

\$\端组\$
0
\$\开始组\$

循环计数器

这个循环计数器是打印无限行数的挑战。第一行有一个*,下一行还有一个*与此行相比,示例输出是:

****************************…(永远)

这是,所以用最少的字节进行编码。

您的输出可以位于任何位置(例如:标准输出、文件、图形等),但必须遵循格式。

\$\端组\$
2
\$\开始组\$

(评论员注意——这可能不是代码高尔夫,但它“押韵”——它不是试图用最少的源生成给定的结果,而是试图用有限的“源”生成最大的结果。)。我当然愿意接受关于它不属于这里的反馈,尽管我认为它可能是一个有趣的问题,所以建议将它放在哪里可以也欢迎加入!)

作为服务消费

从当月1日00:00的空AWS账户开始,您可以产生的最高月支出是多少?

假设

由于该解决方案可能涉及一个自我复制的准指数系统,因此实际支出将取决于AWS本身的性能,因此进行了一些简化假设:

  • AWS完全可用(0%停机时间),永远不会限制请求或应用使用限制。
  • AWS和外部API的延迟始终精确到100毫秒。如果您设置了自己的API,它的“开销延迟”为0——它的延迟是它调用的任何API的关键路径之和。
  • EC2实例只需一分钟即可可用并作出响应。可以假设它们预先安装了您需要的任何软件。
  • 任何最终一致的AWS API都是强一致的,即如果先写后读,就可以保证写入的数据存在。
  • 您可能需要引用的任何Docker映像都可以假设已经存在于ECR(或您的首选注册表)中,并且不计入您的支出。
  • 由于分层定价模型会使支出计算变得复杂,而且(初步估计)您的解决方案可能位于最高使用层,因此您可以假设所有操作都以其可能的最高(每卷)成本收费。例如,标准队列上us-east-1中的所有SQS操作花费24美元/百万次请求
  • 这个月有30天,或2592000秒——没有闰秒或其他诡计

条件和限制

  • 您的开发机器每秒最多可以发出1个API请求(当然,您也可以启动计算来发出API请求)
  • 您有一个1Gb文件,可以用作任何文件上传或永久存储填充的基础。运行compute生成的任何日志都是免费的。
    • 这是为了防止简单地“编程灰狗”,而不是具体地“AWS灰狗”。我更感兴趣的是如何构建一个就AWS服务费用单位而言成本高昂的系统,而不是如何构建一种独立于AWS的系统,该系统消耗大量特定的计算资源,然后将其托管在AWS中。不严格地说,任何类似于以下内容的方法都与问题的意图背道而驰:
      • "管道来自/开发/uradom到<AWS存储服务>"
      • while(true){sys.stdout.println(“存储起来有些昂贵的日志字符串”);}
      • :(){ :|:& };:
\$\端组\$
2
  • 1
    \$\开始组\$ 有趣的挑战想法!我们有一个代码更改为不符合客观获胜标准的挑战贴标签代码嗅觉或任何其他特定的标签,因此您应该可以在那里。这个忙碌的海狸标签也可能适用。你需要更多地解释AWS的工作原理,并将所有细节(如定价)放在挑战文本中:我们大多数人都没有使用过AWS[需要引用],我们喜欢挑战是独立的。最好创建一个简化版AWS的玩具系统,而不是直接引用AWS。 \$\端组\$ 评论 6月3日17:43
  • \$\开始组\$ 啊,很好的反馈,谢谢!既然如此,我可以不要提交这篇文章,因为挑战的一部分在于探索(或创造性地使用现有知识)——系统描述得越明确,就越难想出令人惊讶的滥用或边缘案例。不过,我会仔细考虑一下,看看能否找到一种有趣的方式来提出挑战。谢谢! \$\端组\$
    – 斯库博
    评论 6月3日19:03
\$\开始组\$

更快地滚动该文本!

许多电视新闻台会在底部显示一个自动收发器,它可以被视为一个窗口,变成一个更大的字符串,每个周期向右移动一个空格:

“Lorem ipsum dolor sit amet,consectetur adipiscin”“orem ipsum dolor sit amet,consectetur adipiscing”“rem ipsum dolor sit amet,consectetur adipiscing”“em ipsum dolor sit amet,consectetur adipiscing e”“m ipsum dolor sit amet,consectetur adipiscing el”

如果循环时间很短,并且文本可以快速滚动,则此操作非常有效。但并不是每个更新文本应用程序都这么幸运。无线电数据系统被调频广播电台用来发送少量数据,大约每秒1.2千比特,其中包含有关电台、歌曲或其他内容的信息。但由于比特率如此低,更新速度可能会非常慢,我看到的电台大约每秒更新一次文本。

由于窗口足够小,如果我们一次只前进一个字符,这可能会非常慢。但有些电台使用了一个技巧:用空格分隔信息,并将尽可能多的信息放在一个窗口中。任何比窗口长的单词必须一次滚动一个字符。

挑战

编写函数f(s,w)哪里是要滚动的完整字符串w个窗口的大小(以字符为单位)。w个必须是大于0的整数。输出是一系列字符串(数组或输出到控制台,由换行符或其他内容分隔),其中每一行是ticker的一个步骤。

为了构建输出,我们可以将单词分为适合窗口的单词和不适合窗口的词。第一种,尽可能多地适合一个窗口,忽略尾部空格。如果一个单词正好是1个窗口宽,则认为它是第一类。如果我们找到一个不适合窗口的单词,但当前窗口中仍有空白,只需将窗口的其余部分留空即可。

对于窗口中无法容纳的单词,请一次滚动一个字符,直到单词的末尾显示为窗口的最后一个字符。每个滚动步骤都成为自己的输出行。窗口中不适合的单词永远不会与那些适合的单词共享窗口-输出不应该是“永远不会”,“不适用”,应该是“永远”、“永远”

示例

s=“RICK ASTLEY-永不放弃”,w=10

0123456789“瑞克”“ASTLEY-”“从不”“愿意付出”“你起来了”

s=“卢维格·范·贝托芬-主要症状第7号,作品92”,w=6

012345“LUDWIG”“VAN”(VAN)“贝托”“EETHOV”“以太币”“THOVEN”(千人)"-     "“SYMPHO”“YMPHON”“MPHONY”“7号”“在A中”“少校,”“操作92”

s=“舍尔曼兄弟-超钙化EXPIALIDOCIOUS”,w=15

012345678901234“谢尔曼”“兄弟-”“超级校准”“UPERCALIFRAGILI”“PERCALIFRAGILIS公司”“工程师”“RCALIFRAGILISTI”“校准”“ALIFRAGILISTIC”“LIFRAGILISTICEX”“IFRAGILISTICEXP”“脆性试验”“RAGILISTICEXPIA”“弹性EXPIAL”“GILISTICEXPIALI”“ILISTICEXPIALID”“LISTICEXPIALIDO”“STICEXPIALIDOC”“不公正解释”“TICEXPIALIDOCIO”“ICEXPIALIDOCIOU”“CEXPIALIDOCIOUS”

笔记

  • 单词定义为空格字符之间的任何非空格字符序列,至少为U+0020。单词分隔符不是破折号、逗号或标点符号。
  • 仅支持ASCII很好,但如果它支持更广泛的Unicode选择,包括漂亮的Unicode空白,则可以获得额外的样式点数。
  • 只支持大写、小写或混合大小写都可以。
  • 输出字符串中的尾部空白填充到窗口宽度是可选的。
  • 这是代码高尔夫,所以最小的程序(字节、代码等)获胜!
\$\端组\$
1
\$\开始组\$

计算图形功率

\$\端组\$
-1
\$\开始组\$

嘿,斯洛布斯!按字母顺序组织代码!

这些天写的这么多代码是一场无组织、难以辨认的灾难,而这个code Golf网站似乎吸引了最坏的违规者——我的意思是,四处看看吧!让我们为这片混乱添加一些秩序。

挑战

构建奎因(即打印出自己源代码的程序)。不允许使用“作弊”的奎因

此外,源代码应根据以下算法按字母顺序组织:

  1. 将源代码拆分为任何非字母字符以形成“单词”(字母字符是介于a和z之间的字符,可以是小写或大写)。例如,程序echo“你好,123世界!”包含三个单词-回声,你好、和世界
  2. 验证每个单词是否按字母顺序排列。更准确地说:
  • 忽略大小写(苹果应该在前面香蕉)
  • 第一个单词是另一个单词的前缀(出现在前面态度)
  • 您可以将多个相同的单词放在一起。(苹果(香蕉)“香蕉”;香蕉+蛋糕按字母顺序排列)

你可以打破字母顺序,但会受到重罚。每次发现一个单词按字母顺序出现在前一个单词之前,都会受到1000字节的惩罚。例如,蛋糕苹果香蕉将产生1000字节的罚款,因为“apple”位于“cake”之前,并且香蕉苹果蛋糕将产生2000字节的惩罚,因为与前一个单词相比,“香蕉”和“苹果”都不合适。

其他注释

我不建议在不使用字母字符(例如空格、brainf***等)的语言中进行此挑战。如果你真的想做的话,你可以做,但这只是一个常规的老奎因挑战,会得到一个非常无趣的答案。

\$\端组\$
2
  • \$\开始组\$ 您可能希望链接到适配奎因的现场标准而不是指定自己的规则。并不是说你的规格不明确,但人们通常更习惯于标准的奎因规则。 \$\端组\$ 评论 5月29日9:34
  • \$\开始组\$ 谢谢你的提示-更新了。 \$\端组\$ 评论 5月31日20:21
0
\$\开始组\$

迷你地铁

此挑战基于一款名为迷你地铁

想象一个方形网格。网格上的每个点(网格线交叉的地方)都可以有一个形状——方形、圆形、三角形;或为空白。

如果一个点有形状,则任何相邻点(对角或正交)上都不能有形状。

然后可以从一个形状的中心到另一个形状中心绘制线。沿途经过的任何形状也算作连接到线条。

在一个形状上,线可以改变方向(形成一个角),线可以连接回起点(形成闭合形状);但不能通过同一个形状两次,除非关闭形状。

给定一个预先放置了形状的网格,任务是绘制尽可能少、尽可能短的线条,将所有形状连接在一起。每条线只能包含(连接到)每种类型的一个形状。

例如(下图中所有中心点均为近似值):

  1. 圆形-方形-三角形,给定形状的一条可能最短长度的直线:

在此处输入图像描述

  1. 圆形-方形和2个三角形。需要两条线来确保每条线包含每个形状中的一个:

在此处输入图像描述

  1. 更复杂的东西:

在此处输入图像描述

输入

任何合理的输入,以表示坐标和形状类型

输出

任何合理的输出,以表示直线及其端点/角点,用于如上所述连接所有形状的直线

评分

,通常除外条款和规则适用

\$\端组\$
4
  • \$\开始组\$ 听起来(NP-)很难。 \$\端组\$
    – 阿达姆
    评论 5月29日12:36
  • \$\开始组\$ 是的,我知道这个问题需要改进,但我喜欢这个想法,所以想把它放进沙盒里引起一些关注。我想象的大概是:1。对于每个圆,找出最近的三角形和正方形2。对其他形状重复3。。。?4.成功! \$\端组\$ 评论 5月29日12:59
  • \$\开始组\$ 但这与“画尽可能少、尽可能短的线”相矛盾 \$\端组\$
    – 阿达姆
    评论 5月29日15:27
  • \$\开始组\$ 嗯,谢谢你,让我仔细研究一下我的要求,看看我认为哪一个是最有趣的挑战 \$\端组\$ 评论 5月29日15:30
0
\$\开始组\$

将CSV表格转换为Wikitext

\$\端组\$
0
\$\开始组\$

我的三角形会聚需要多长时间?

当我编织成一个圆圈时,我会将3根针排列成三角形,如下图所示。每根针都有整数针数。目标是让所有的针都有相同的针数。

B类左后

分别为左、右、后。

例如,我的针数可以是:

阶段,L、R、B0、10、20、15

当我编织的时候,沙发的移动方式如下:

  1. L移到R,所以L缝了0针。B保持不变
L1=0R1=R0+L0B1=B0阶段,L、R、B1, 0, 30, 15
  1. B移动到L,R在R和B之间平均分配:
L2=B1R2=R1/2B2=R1/2阶段,L、R、B2、15、15、15

现在,每根针都缝了15针,整个过程如下。

阶段,L、R、B0, 10, 20, 151, 0, 30, 152, 15, 15, 15

如果针没有收敛,重复。

更多示例

五十、 R、B22, 1, 10, 23, 11, 11, 120, 12, 1212, 6, 60, 18, 66, 9,  90, 15, 99, 7,  80, 16, 88, 8,  8

在最小字节数中,对于任何给定的LRB三元组,返回收敛所需的最小迭代次数。

讨论:

  • 我是否应该将L、R、B约束为3的倍数
\$\端组\$
-1
\$\开始组\$

计算sqrt(2)的位数

您的答案必须按顺序显示sqrt(2)的数字,一个接一个,而不能停顿。

您可以自由选择基数,只要它是大于或等于2的整数。

您可以将将整数部分与其余部分分开的点与前一个数字、下一个数字捆绑在一起,或作为单独的输出。

最短的胜利。

为了检查正确性,您的程序应该能够在不到一个小时的时间内在笔记本电脑上运行到精度为1/INT_MAX(C中的那个)。

\$\端组\$
2
  • \$\开始组\$ 也许可以输出答案14142...没有小数点? \$\端组\$ 评论 5月27日5:09
  • \$\开始组\$ @司令官我对这件事没有什么强烈的意见。你认为这会更有趣吗? \$\端组\$ 评论 5月27日12:34
1
\$\开始组\$

最小泥质数。


挑战

给定一个正整数\n美元\$,一个泥泞的数量\n美元\$是一个数字,其中数字的乘积等于\n美元\$

例如,数字\$12\$具有以下模糊数字:\$26\$,\$62\$,\$34\$,\$43\$,\$223\$,\$232\$,\$322\$

你的工作是,给定一个正整数\n美元\$,找到它最小的模糊数。例如\$12\$\$26\$

输入/输出

输入/输出可以采用任何合理的格式,取正整数n并返回最小的整数。

测试用例:

输入-->输出12  --> 2618  --> 29210 --> 235748  --> 68360 --> 589162 --> 299480 --> 3458

这是,所以最短答案(以字节为单位)获胜!


  • 我该如何处理没有模糊数字的情况,比如\$1910\$? 返回-1,或者只是说输入总是至少有一个模糊的数字?
  • 除了“mudigiply”还有别的名字吗?哇,我真的不擅长双关语。
\$\端组\$
  • \$\开始组\$ 这是A068189号 \$\端组\$ 评论 5月24日14:52
  • 1
    \$\开始组\$ 我认为最好是让输入始终具有有效的解决方案 \$\端组\$ 评论 5月24日14:57
  • \$\开始组\$ 210 --> 567480 --> 2568 \$\端组\$
    – 阿尔诺
    评论 5月27日14:52
1
\$\开始组\$

这是一个可解的Numberlink吗?

\$\端组\$
7
  • \$\开始组\$ 您的解决方案示例看起来需要在每个空单元格中填入一个数字s.t。每个连接的数字,这似乎不是有意的 \$\端组\$ 评论 5月14日22:20
  • \$\开始组\$ 或者如果允许留下一些空单元格,那么两者是等价的 \$\端组\$ 评论 5月14日22:22
  • \$\开始组\$ @l4m2好吧,你可以留一些空白,只要它有一条路 \$\端组\$ 评论 5月15日1:37
  • \$\开始组\$ 许多人可能也知道这个谜题自由流动。另请参阅但这有多难流动?(YouTube)其中讨论了解决Flow难题的计算复杂性。解决这些难题是NP-完成的,但我不确定检查它们的可解性是否是。 \$\端组\$
    – 面条人
    评论 5月21日22:31
  • \$\开始组\$ @诺德曼:是的,视频激发了我进行这项挑战,我想知道是否有一种方法可以检查多项式时间,它是否比暴力解决方案更像高尔夫。 \$\端组\$ 评论 5月22日13:38
  • \$\开始组\$ 我认为您应该允许以坐标y结构或矩阵的形式输入。我在代码中进行了编辑,以使图像更小,请检查Markdown diff:堆栈交换图像上传,添加在文件结尾变为中等大小之前,使尺寸变小,虽然我还没有尝试过,但可能会让它们变大。 \$\端组\$
    – 面条人
    评论 5月22日14:34
  • \$\开始组\$ 对于真正的测试用例,我想您可以借用Flow的级别。如果你已经有了解决问题的方法,你可以用它来找到无法解决的问题。 \$\端组\$
    – 面条人
    评论 5月22日14:38
0
\$\开始组\$

邮件发件人

一个城镇里有N栋房子和一些小路。有些邮件需要从一个房间发送到另一个房间。

你现在在1号房间,你的工作是尽快发送这些邮件。输出最短时间。

测试用例:

(路径P1、P2、成本)。。。[Src,Dest]…=>成本(1,2,8)[1,2]=>8(1,2,8) [2,1] => 16(1,2,3)(1,3,4)(2,3,5) [1,2][1,3] => 8(1,2,3)(1,3,4)(2,3,5) [3,2] => 9(1,2,3)(1,3,4)(2,3,5) [3,2][2,3] => 13

  • 还是两个问题?
  • 假设给定的任意两栋房子之间的最短路径?(可能没有)
\$\端组\$
-1
\$\开始组\$

给定三角形的三个角和边,决定存在多少可能的三角形。

输入:

3个条件。您可以使用6个输入来表示所有边和角度,无效值表示不存在;或者只有三个。

所有给定的边和角都是正的,并且小于100000,但角的边界不是180度,所以需要检查。

输出:

描述有多少可能性的整数。如果任何输入相差最多0.001%,您可以假设答案保持不变,这也会导致一些边缘情况不需要考虑。

测试用例

E A(度)E A E A3 -  4 - 5 - => 13 90 4 - - - => 15 60 - - 4 - => 24 60 - - 5 - => 15 60 - - 1 - => 05 200 3 - - - => 04 30--2-(无效输入)
\$\端组\$
2
  • \$\开始组\$ 我认为这意味着所有的角度和边都与另一个一致,实际上形成了一个欧几里德三角形。与此相反的是不可能。只有在输入不完整的情况下,即没有足够的信息(角度和边)来最终确定所有边和角度都已知的整个三角形时,多重可能性才有意义。是这样吗?你能详细说明一下你对这三个类别的定义吗?此外,您已经说过输入是3个角度和3条边。它实际上可以是0-3个角度和0-3个边吗? \$\端组\$ 评论 4月1日7:39
  • 1
    \$\开始组\$ @DanielOnMSE角度和边缘可能缺失,我说过可能(取)0或非数字 \$\端组\$ 评论 4月1日8:11
1
\$\开始组\$

将base-10转换为base-0.1。

测试用例:

12.34 <=> 432.112 <=> 2.13.0 <=> 3.00

提示:事实上0可以像其他数字一样工作,只要您映射33而不是3


我还有什么要说的吗?

\$\端组\$
2
\$\开始组\$

冷蜜蜂和老啤酒

标签:

张贴

(尚未删除,因为我可能最终会对建议的第2部分提出质疑。)

\$\端组\$
7
  • \$\开始组\$ 我反对把这个视频称为愚蠢。我相信它非常棒! \$\端组\$ 评论 4月23日6:35
  • \$\开始组\$ @我删除了“愚蠢”这个词我还意识到,在删除它之后,我的意思是说“愚蠢”。百万英镑 \$\端组\$ 评论 4月23日7:00
  • \$\开始组\$ 建议一些多输出案例 \$\端组\$ 评论 4月27日10:51
  • \$\开始组\$ @我本来打算这样做。我刚刚添加了一些多输出测试用例。 \$\端组\$ 评论 5月1日13:34
  • 2
    \$\开始组\$ 这对单词中的两个单词允许是同一个单词吗。类似这样的输入:[“啤酒”、“蜜蜂”、“啤酒”]生产[“啤酒”,“啤酒”]作为输出? \$\端组\$ 评论 5月1日16:45
  • \$\开始组\$ 此外,一个有趣的、可能更复杂的挑战浮现在脑海中。滚动符号本身的问题不在于它偏离了第一个或最后一个字母,而是它只有8个字符的空间。另一个挑战可能是从字典中选择一个短语(一个或多个单词),该短语将始终只显示标志上的有效单词,无论它在短语中的什么位置。基本上,给定字典和符号宽度(n个),找到一个字符串,使长度为的所有子字符串n个只有有效的单词。 \$\端组\$ 评论 5月1日16:49
  • \$\开始组\$ @Xcali好问题。我会说不,但这确实使我的潜在实现方法不正确至于替代方法,我可以做第1部分和第2部分。 \$\端组\$ 评论 5月6日13:12
1
\$\开始组\$

有理数的超模表示

目标

给定一个有理数,输出加法(阿贝尔)商群中相应陪集中的代表\$\mathbb{Q}/\mathbb{Z}[1/2]\$\$\mathbb{Q}\$是有理数的加法组,并且\$\mathbb{Z}[1/2]\$是有理数的加法群,其分母是2的幂,被标识为一个带乘法结构的伴随环。

代表

作为一个商群,\$\mathbb{Q}/\mathbb{Z}[1/2]\$由陪集组成。每个陪集正好有一个有理数,这样:

  • \$0\$,或
  • 是具有正奇数分母的正真分数。

这个数是所说陪集的代表。

I/O格式

I/O有理数应为简化分数。也就是说,分子和分母应该是互质,分母应该为正。

例子

输入->输出0/1 -> 0/11/1 -> 0/12/1->0/11/2 -> 0/13/2 -> 0/11/3->1/32/3 -> 2/31/6 -> 2/35/6 -> 1/31/8 -> 0/11/10 -> 3/53/10 -> 4/57/10 -> 1/5-1/1 -> 0/1-1/6 -> 1/3-1/12 -> 2/3

元问题

用外行的话来说,这一挑战将如何呈现?

\$\端组\$
5
\$\开始组\$

Dedekind停下来!

目标

给定一个Dedekind剪裁实数的\x美元\$和一个正整数\n美元\$,打印Dedekind代表的实数\n美元\$精度,四舍五入。

Dedekind剪裁

A类Dedekind剪裁表示实数\x美元\$是稠密集上的布尔值函数,它为有理数在\x美元\$否则将是一个真实的价值。在这个挑战中,稠密集是\$\mathbb{Z}[0.1]\$,带终止小数扩展的有理数。

请注意,Dedekind切割可以表示任意的实数。无理的,不可构造的,超越的,甚至是不可改变的数字。

规则

  • 舍入方向由实现定义。

  • 对于输入的Dedekind切割,它应该是一个黑盒函数,接受以下元素的十进制扩展(这是一个具有实现定义格式的字符串)\$\mathbb{Z}[0.1]\$

  • 输入无效不在乎情况。这也适用于Dedekind剪切接受的有理数。

  • 输出格式灵活。允许输出前导或尾随空格。

  • 对于输出,小数点后的所有数字在这方面应视为有效。小数点后的有效位数必须精确\n美元\$。后面的零不能丢弃。

示例

  • 对于\$x=0\$\$n=2\$,输出\$0.00\$
  • 对于\$x=\压裂{1}{4}\$\$n=1\$,输出\$0.2\$\$0.3\$
  • 对于\$x=\压裂{1}{2}\$\$n=3美元\$,输出\$0.050\$
  • 对于\$x=\sqrt{2}\$\$n=3\$,输出\$1.414\$
  • 对于\$x=-\pi\$\$n=3\$,输出\$-3.142\$.注意圆角。

非高尔夫解决方案

哈斯克尔

具有指数时间复杂性的实现。

导入文本。打印showDedekind::(字符串->Bool)->Int->字符串showDedekind x n=go2 0其中go1::Int->Int->字符串go1 m i=让s1=打印f“%+0*d”m i(s2,s3)=splitAt(长度s1-m)s1在s2++中(如果元素(最后一个s2)为“0123456789”,则为“else”0)++'。':第3节go2 i=案例(x(go1(n+1)(10*i-5)),x(假,假)->go2(i+1)(假,真)->go1 n i(真,真)->go2(i-1)_->错误“这不是Dedekind切割”
\$\端组\$
2
  • \$\开始组\$ 准确地说,输入值x个实际上是作为黑箱函数是吗?对于输出格式,我建议保持简单。您甚至可以完全忽略它,以便我们可以为使用的每种语言假定一种方便的格式(在默认I/O规则下)。理论上,这些解决方案是否支持任意大的x个(有两个标志)? \$\端组\$
    – 气泡器
    评论 2021年3月2日9:08
  • \$\开始组\$ 1.n=0的第一个和第三个测试用例不符合规范(“正整数n”)。2.评分标准是什么? \$\端组\$
    – 帕乔克
    评论 2023年4月20日7:45
4
\$\开始组\$

零在哪里?自描述序列

\$\端组\$
0
\$\开始组\$

在拆球游戏中获胜

这个挑战是互动的。你需要在移球比赛中获胜。

规则

游戏规则是这样的。你有N个一排球,编号为1到N个,您的程序和用户将轮流移除一个球或两个连续的球,如果玩家无法移除,则他/它将失败。你的程序先行。用户保证遵守规则。显然,使用策略,您的程序总能获胜。

格式

首先,您需要从标准输入中读取N。然后,如果您的程序删除了一个球,请打印1然后打印要移除的球的编号,用空格隔开,否则打印2然后是要移除的最小球数,用空格隔开。然后,用户将按照相同的格式进行输入。

例子

用户:5课程:13用户:2 1课程:2 4

这是一个交互示例。共有5个球,程序首先删除第三个球,然后用户删除第一个和第二个球,最后程序删除第四个和第五个球。用户现在没有球可以移除,因此程序获胜。

目标

这是,所以代码最少字节

\$\端组\$
6
\$\开始组\$

以平衡基数显示整数-

目标

给定一个积极的整数,以平衡基数-数字显示。是黄金比率

平衡底座-

不同于通常的基数-使用0和1作为数字,平衡的base-使用1和-1作为数字。

-1已写入T型作为速记。

为了确保表示的唯一性,存在一些限制:

  • 1吨不能出现在任何地方(基数点被忽略)。要清除它,可以用表11

  • 最低有效数字必须为1

即使有这些限制,仍然有一个整数的表示不是唯一的,即2。为了应对这个挑战,您可以输出1吨1.11

规则

请注意,我还没有证明平衡的基数表示存在于每一个正整数。我怀疑有一个整数没有平衡的基数表示法,但这样的输入会导致不在乎情况。

还需要注意的是,我还没有证明2是唯一具有模糊平衡基-表示的正整数。如果输入了另一个具有模糊表示的整数,则输出此类表示中的任何内容。

示例

十进制,平衡基数-1, 12、1T1或1.113、1、114, 11.1111111年5月11日6、111.1T11117、11T1.1T11118、1T111.T1119、111T.11111110、1111.1T1T111111, 1111.11111112,1T11T1.11111113、1T111T.111T111114、1T11111.T1111115、1T1111.111T11111611111.T1T1段17、11T1T1.111T111118、11T11T.11T11119,1T11.11T11111T111.11T111第20页
\$\端组\$
2
  • 2
    \$\开始组\$ 为了证明这涵盖了所有的数字,你可以使用这样一个事实,即每个整数都有一个表示形式,即不同的卢卡斯数之和,以及公式\$L_n=\phi^n+(-\phi)^{-n}\$。 \$\端组\$ 评论 2023年12月15日10:47
  • 1
    \$\开始组\$ 真有趣!我刚刚在我的语言中添加了基数转换,我想:为什么要将它限制为整数基数?现在我回来看看这个挑战!我发现了一个关于浮点数的基数转换,但到目前为止还没有一个浮点数基数(或者我错过了吗?)。在平衡基础变得更加复杂之前,这可能是第一个吗? \$\端组\$
    – 腓力
    评论 2023年12月17日18:04
0
\$\开始组\$

创建随机Triling

在Puzzling SE中,用户23087想出了一个有趣的新谜题类型。(https://puzzing.stackexchange.com/questions/126659/try-triling-triangular-tiling).

给定两个正整数N和M,显示一个随机的“Triling”游戏板布局,其中N x M块由(N+1)x(M+1)点组成,放置在每个块的角上,标记出一块板,其中一些块包含数字。

如果玩家可以将棋盘上的点连接起来以创建三角形,则棋盘布局可以有效地“Triled”,每个数字的平铺完全包含在一个面积等于该数字的非重叠三角形中,并且整个棋盘都覆盖在这样的三角形中,没有间隙。

我认为不可能用N和M的奇数对一块板进行Trile,也不可能用小于2的N或M对一块板子进行Trile。你可以假设你只能得到N和M的三值。

只要看起来合理,你可以知道哪些平铺是数字平铺,以及它们要处理的值,那么点和字母的间距到底有多大并不重要。单位数可以是零加或空加。

N=2,M=2-输出必须是随机的板,如:

.  .  .2.  .  . 2.  .  .

或:

2.  .  . 2.  .  .

这是2 x 2主板仅有的两种合法布局。

前者可以通过这样画一条线来解决,将两个“2”块完全放置在区域2的非重叠三角形内:

.  .  /2  ,`.  /  . ,`  2/  .  .

N=4,M=4-布局,如:

. . . . ..2. . .2. . .4. .. .4. . ..2. . .2

或者:

. . . . . .2. . .4..4。. . .4. . .2. . . .

或者:

. . . . . . .4. . . .2. . . . .2. .8. . . . . . .

……或者其他很多,尽管我认为这种大小只允许分幅值为2、4和8。

评分:生成只使用值“2”和“3”的电路板很简单。为了鼓励更多新颖的算法,这是代码高尔夫与残疾人,得分最低者获胜。最短的代码将有一个良好的开头,但随后:

  • 如果您的解决方案只是琐碎的随机性,则得分加倍(例如,即使对于具有多个替代解决方案的较大板,也可以通过替代循环生成相同的板)。我认为不可能证明一个答案可以产生全部的可能的有效解决方案,这没关系。
  • 如果你的答案是双倍的分数只能生成完全可以用直角三角形求解的布局。
  • 如果你的答案是双倍的分数不能生成包含钝角三角形的布局。
  • 将你的分数乘以你的答案列表中的数字[1、2、3、4、5、6、7、8、9和10]不能/不会放置在生成的板中。(由于“1”不可能合法放置,即使是理想的解决方案也会乘以1,而不是0。)

这些妨碍处罚层出不穷。在你的答案中提到你申请了哪些。

为了进一步鼓励新的算法,而不仅仅是重复人们提出的第一个高效算法,每个使用新布局生成算法的人都可以在答案的标题中使用惊叹号。没有人可以在他们的答案标题中使用感叹号!因此,这完全是一种表面上的、自我管理的奖励,而不是分数,分数是由真实、真诚的互联网点数组成的,可能在一些国家可以用来换取食物。

\$\端组\$
1
2 4 5
157

你必须登录来回答这个问题。

不是你想要的答案吗?浏览标记的其他问题