Kai’blog

主博客 | 势利纷华,近之而不染者洁,不近者亦洁,君子不立危墙之下。
摘要: 总结 1 同时试验了O(k*根号n)的质数试验法和O(nloglogn)≈O(n)的埃氏筛法,虽然看上去筛法更快,但是,当k不大且n不小的时候,即真正所需知道是否的质数的数不多时,朴素的挨个试验法其实更快,两个方法的代码都在这里。 2 scanf/printf功能更强大而且读写速度几乎比cin/cout快了一倍,所以请尽量使用scanf/printf 3 TLE时,可以试试把scanf/printf替换成更加快速的基于getchar()的快读快写函数(需要理解并记忆) 4 别瞧不起打表,TLE时试试打表。且同一题中打表可能有多种打法,有些打法出来的表就很小,可以用这种(比如本题中打质数表和答案表都可以,但后者显然小得多得多)。 5 就算实在不想打表,也可以半打表,即通过观察TLE程序的最终输出,寻找无需计算的部分进行优化(比如本题中发现8位数中根本没有符合题意的数字,所以算到10000000时直接不算了) 阅读全文
posted @ 2023-07-01 23:08 Kai-G 阅读(16) 评论(0) 推荐(0) 编辑
摘要: 如何发现自己程序的问题?请按下面的列表依次检索,即可发现问题,若未发现问题则很可能是程序已经合格。 1 程序的鲁棒性,即输入边界数据等特殊数据时能否给出正确结果 2 是否TLE 3 是否MLE 解决方法 1.鲁棒性不足:设置特例特判的机制 2.TLE cin/cout替换成scanf/printf, 阅读全文
posted @ 2023-07-01 22:16 Kai-G 阅读(21) 评论(0) 推荐(0) 编辑
摘要: 写完题后一定要把各种边界性质的数据想出并用于测试 阅读全文
posted @ 2023-07-01 22:08 Kai-G 阅读(32) 评论(0) 推荐(0) 编辑
Copyright © 2019-2020 拱垲. All rights reserved.