如果我们需要编写一个定期运行的程序,我们更喜欢哪种方式?编写Windows服务或编写一个按计划任务工作的控制台应用程序?
我越来越沉迷于项目欧拉问题.然而,因为一周我被#214困住了.
这是问题的简短版本:PHI()是Euler的整数函数,即对于任何给定的整数n,PHI(n)= k <= n的数字,其中gcd(k,n)= 1.
我们可以迭代PHI()来创建一个链.例如从18开始:
PHI(18)= 6 => PHI(6)= 2 => PHI(2)= 1.
所以从18开始我们得到一条长度为4的链(18,6,2,1)
问题是计算小于40e6的所有素数之和,它产生一个长度为25的链.
我构建了一个计算任何数字的链长的函数,并且我测试了它的
小值:它运行良好且快速.
所有素数的总和<= 20,它产生一个长度
为4:12的所有素数<= 1000的总和,产生一个长度为10的链:39383
不幸的是我的算法不能很好地扩展.当我将它应用于问题时,需要几个小时来计算...所以我停止它因为Project Euler问题必须在不到一分钟内解决.
我认为我的主要检测功能可能很慢所以我给程序提供了一个素数列表<40e6以避免素性测试......代码现在运行得更快一些,但仍然无法获得解决方案不到几个小时(我不想要这个).
那么我在这里缺少任何"魔术"吗?我真的不明白如何提高效率......
我不是要求解决方案,因为与优化斗争是Project Euler的所有乐趣.但是,任何可能让我走上正轨的小提示都会受到欢迎.
谢谢 !
抱歉,评论的格式错误,我无法删除它.所以这又是:
为了计算totient函数,我使用以下内容:对于给定的n,让我们调用它的因子列表.
披(N)= N*PROD((P-1)/ p)的
例如:2,3是18 => phi(18)= 18*1/2*2/3 = 6的因子
所以这样我不计算任何gcd.给我这些因素的函数是用MATLAB构建的(是的,我忘了提到我在Matlab中编写代码).也许我应该重写分解功能......
我按下任何按钮时,我写了一个小节目,在屏幕上显示声音和图像.当我的一个小孩爬到我的膝盖上然后开始按键时,我总是开始它,当然是随机的.
它工作正常,除了2个键,其中一个是ON/OFF开关,另一个是Windows键.(CTRL-ESC相当于我相信)我可以在按下它时拦截它,但只有在startmenu显示之后.
我使用的事件是UIElement.KeyDown,到目前为止我能想到的是:( e是KeyEventArgs)
if (e.Key == Key.LWin) e.Handled = true;
Run Code Online (Sandbox Code Playgroud)
但是起步窗口已经显示出我害怕了.
我已经有1个回答,但非常想知道是否有任何wpf支持?
我怀疑编程主开/关开关可能不可能?否则,任何帮助也会受到欢迎..
你能详细说明Python中"块"(在Ruby意义上)的当前状态吗?
Python中存在哪些语言结构?他们如何与其他语言(如Ruby,Smalltalk,[插入更多])进行比较?或者Python缺乏这样的结构?
到目前为止,我已经理解了这lambda件事; 它只是单行,但也许它接近.yield在这种情况下,"装饰者"怎么样?
我也在一些项目中使用旧的Python版本.在Python版本(2.5,2.6等)或未来版本中计划引入哪些构造?
您是否可以链接有关该主题的有趣文章来解释Python的这些内容以及与其他语言进行比较,对于想要扩展基本Python知识的人来说可能会有趣吗?
我的基本要求是从XML文件中获取元素值,我使用了XMLDoxument.SelectSingleNode.我的XML文件在头文件中包含一些Namespace,所以我使用了NameSpaceManager来添加namespace-prefix,并且我使用了prefix来获取该特定元素.现在在我的XML文件中,命名空间变得越来越多,我不想做任何硬编码,有什么方法可以找到所有命名空间,我可以将它添加到NameSpaceManager.
谢谢.
在Notepad ++中,我设置了"用2个空格替换选项卡".
在Python中编码时,我从网上复制粘贴了一些代码,它看起来正确缩进.但是运行代码会导致缩进错误,最后我通过删除行开头的所有"可见"空格并再次插入相同数量的空格来解决这个错误.
基于Scintilla的Notepad ++是否有可能不显示所有特殊字符,但将它们显示为空格?有没有解决这个问题的设置?
我有一个VirtualBox进程,我试图杀死它(-KILL/-ABORT),但没有成功.父pid是1(init).
top显示D记录为"不间断睡眠"的过程.
strace 没有表现出来.
我怎么能摆脱这个?它阻止我卸载vbox内核驱动程序以加载更新的驱动程序.
是否可以通过Web服务提供Excel电子表格.我认为不是因为ASP.NET Web服务似乎只处理可以使用excel二进制格式的Serializable元素(我认为).如果Excel以XML格式保存,这会有效吗?
我有许多报告将通过电子邮件发送,但请求已经允许这些报告通过Web服务提取.
这可以实现吗?
我在我的WPF中添加了上面的代码,其中包括动画GIF图像,问题是每当表单加载我没有找到任何图像显示在表单上,任何建议???
<Image Name="imgScan" Source="Images\Pre_Scan_RealImage.gif" />
Run Code Online (Sandbox Code Playgroud)
我甚至尝试过上面显示的Image元素
我想知道是否可以在存储过程中有多个Update语句
像这样的东西:
Update Table1 set field1 = @new_value where id = @table1_id
Update Table2 set field2 = @new_value where id = @table2_id
Update Table3 set field3 = @new_value where id = @table3_id
Run Code Online (Sandbox Code Playgroud)
现在我正在单独执行它们,但由于它们只是一起使用,我想知道它们是否只能位于一个SP中.