问题标签 [time-limiting]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
165 浏览

c - 有没有办法给 fgets() 设置时间限制?

我在微控制器中使用 fgets() 运行控制台。如果我在 fgets() 提示输入命令时让控制台闲置时间过长,则会触发看门狗计时器。

我想知道是否可以对 fgets() 设置时间限制,这样如果用户在一定时间后不提供命令, fgets() 就会过期?

0 投票
1 回答
43 浏览

c++ - Usaco 第 1.6 节 Prime Palindromes

你好,所以我在做这个问题,他们给你的范围从最小 5 到最大 100,000,000

你必须找到从第一个数到第二个数的所有素数回文数

例子:

输入:5 500

输出:

5

7

11

101

131

151

181

191

313

353

373

383

因此,在您查看我的解决方案之前,您需要了解两件事,除了一些第一个素数之外,所有素数都以这 4 位数字 1、3、7、9 结尾,并且所有偶数位数的回文数都可以被 11 整除

所以理解这一点,你就知道所有的素数回文数都需要以这 4 位数字之一开头,并且没有偶数位数的素数回文数例如:7557

所以我的解决方案是创建回文并检查它们是否是素数,然后打印它们,我用来检查它们的方法是有一个像 12 这样的数字,然后反转它并像 1221 一样附加它,并在中心从 1 添加一个数字至 9:12121

但我这样做的方式是让所有数字都以这种方式以这 4 位数字开头:

1-1 3-3 7-7 9-9

我一直这样做,直到产生的数字大于限制,在这种情况下我停止创建新的回文数,这样做的好处是我把它们整理好了

创建我的解决方案:

这里的问题是我的解决方案用完了时间,例如在这种情况下:9878210 9978210

即使我使用的反向功能是从另一个也解决了问题的解决方案中获得的

其他人的代码:

所以问题是为什么我的程序没有时间用完而他的程序没有,如果两者都做同样的事情,但我做的程序比他少?

0 投票
2 回答
2370 浏览

python - 代码执行时间限制的字符串排序问题

我最近试图解决一个 HackerEarth 问题。该代码适用于我提供的示例输入和一些自定义输入。但是,当我提交时,它显示超出时间限制的错误。有人可以解释我如何使代码运行得更快吗?

问题陈述:循环移位

一个大的二进制数由大小为 N 的字符串 A 表示,由 0 和 1 组成。您必须对此字符串执行循环移位。循环移位操作定义如下:

如果字符串 A 为 [A0, A1,..., An-1],则在执行一次循环移位后,字符串变为 [A1, A2,..., An-1, A0]。

您执行了无限次移位,并且每次都记录了字符串表示的二进制数的值。执行(可能为 0)操作后形成的最大二进制数是 B。您的任务是确定可以执行的循环移位数,以使字符串 A 表示的值第 K 次等于 B。

输入格式:

第一行:一个整数 T 表示测试用例的数量对于每个测试用例:第一行:两个空格分隔的整数 N 和 K 第二行:A 表示字符串

输出格式:

对于每个测试用例,打印一行,其中包含一个整数,该整数表示执行的循环移位操作的数量,使得字符串 A 表示的值第 K 次等于 B。

代码:

0 投票
1 回答
215 浏览

javascript - 正则表达式执行时间限制如何在 Google Apps 脚本中发挥作用?

TLDR:

这个任意的 RegExp 执行时间限制是多少,它是多长时间,它何时适用(因为它在所有 Google Apps 脚本上下文中并不同样适用)?此外,当整个脚本已经存在执行时间限制时,为什么还要应用它?

全文:

我突然遇到了错误

“错误:正则表达式操作超出执行时间限制。”

在 Google Apps 脚本中。我在使用我创建的 Google 表格上的自定义菜单运行函数时遇到了这个错误。这会创建一个简短的 UI,请求使用输入电子表格 url,然后使用提供的 url(和电子表格)运行一个函数。

我之前运行过这个函数,它运行良好,但现在我得到这个正则表达式时间限制错误。需要明确的是,这个脚本远未达到脚本执行的最大时间限制,只是显然我的正则表达式太长了。我已经确定了正则表达式的行(它重复运行并且通常很好并且已经工作到这一点)没有明显的缺陷。这是一个很大的正则表达式,但文本不是很长。它在 217 个字符的文本上失败。

此外,当我从 Google Apps 脚本编辑器运行等效函数时,我发现错误不会发生(没有 UI,它只是从我创建的 Google Apps 脚本库中调用相同的函数)。需要明确的是,我确信工作执行中的变量和环境是相同的。它在 8 秒内完成,解析相同的文本,并使用相同的正则表达式。

这使我相信有一个任意时间限制适用于正则表达式,这适用于因为该函数已从自定义菜单调用,该函数短暂使用 UI,或者该函数调用了一个库(或这些的某种组合)。

这个任意的 RegExp 执行时间限制是多少,它是多长时间,它何时适用(因为它在所有 Google Apps 脚本上下文中并不同样适用)?此外,当整个脚本已经存在执行时间限制时,为什么还要应用它?

我无法在 Google 的 Google Apps 脚本文档中找到任何提及此特定错误/时间限制/配额的内容。

为了清楚起见,我检查了他们使用的 UI 脚本是否使用了正确的库版本(并且开发模式无论如何都处于打开状态,因此它使用的是最新版本)。我还确认通过控制台打印使用相同的变量运行相同的函数,所以我知道唯一的区别是函数的调用方式。

如果您出于某种原因需要它,这是在一种情况下打破时间限制但在另一种情况下没有时间限制的 RegExp:

MCVE:

以下是它在一种情况下失败但在另一种情况下失败的一些文本:

存储和机械室 6 与 Stage 相邻 - 6 个月 AHERA 15 EA ACPFI RMV <类别:3> 注意:天花板中间,5 个损坏的配件。全部RMV。0 SF 防火、外壳、天花板上方的瓷砖 <类别:3> 见注释

要重现失败的上下文,在 Google 表格电子表格中,使用脚本编辑器(作为文档绑定脚本)创建自定义菜单,然后单击“测试”按钮。

容器绑定脚本代码:

testFun()从脚本编辑器中的容器绑定脚本运行时,它也会失败。

要重现成功的执行上下文,请创建一个独立的 google apps 脚本(不是来自电子表格)并testFun()在脚本编辑器中运行。

独立脚本代码:

0 投票
1 回答
133 浏览

google-colaboratory - 没有 GPU 或 TPU 的 colab 虚拟机的生命周期

我经常读到(这里这里和许多其他地方)谷歌 colab 的虚拟机在 12 小时后超时。然而,它总是与 TPU 和 GPU 加速的虚拟机有关。

非硬件加速的呢?有时间限制吗?也是12小时吗?

0 投票
3 回答
79 浏览

c - 如何减少这段代码以避免TLE

该程序是在一个数字的阶乘中找到位数

由于我在编码方面还没有广泛的经验,因此请随意评论对此代码的改进。

0 投票
1 回答
162 浏览

c++ - 如何摆脱“超过时间限制”

我尝试解决在线网站中的一些问题。我用简单的 C++ 解决了一个问题,它运行良好,但有时会抛出“超出时间限制”错误。如何摆脱这个?

这是我解决的问题

有两个整数 A 和 B。您需要计算位于 A 和 B 之间的所有自然数之间的按位与,均包括在内。

这是我的代码。

0 投票
1 回答
345 浏览

sockets - 在使用C语言的socket编程中,如何设置服务器接受客户端建立连接的时间限制?

我正在开发一个涉及 1 个客户端和 1 个服务器的应用程序。

我希望服务器只监听 5 秒钟的连接。如果客户端未尝试建立连接,则服务器应停止侦听并返回错误消息。如果客户端尝试建立连接,那么服务器应该接受连接。

如果客户端没有尝试建立连接,服务器将永远监听。我想让服务器只听5秒,怎么实现呢?

这是服务器端的输出——服务器永远在等待客户端:

图片

0 投票
1 回答
254 浏览

python - 使用 CPLEX 在 python 中使用 timelimit 是否存在错误?

我目前正在写我的论文,我想在其中实现一种算法,以使用大型 OR 模型收敛到一个好的解决方案。

如果您需要它来回答我的问题或更好地理解我的问题,我可以包含该模型。

当我以一定的时间限制(在这种情况下为 60 秒)运行模型时,模型会忽略它并求解到最优。查看代码,我在其中求解模型prob

求解该模型的输出为:

我在这里做错什么了吗?我希望你能帮忙。

更新:

CPLEX 日志:

0 投票
2 回答
33 浏览

python - 问题是找到 1 到 num 内的两个数字相乘成为 num

问题是在乘法中找到两个数字1 to num成为num(素数只有 1,num 和其余任何 2 个因数)。我现在看到的是超出时间限制的错误。谁能帮我优化它?