————————————————1004——————
2015-11-30 20:50
169 查看
——————内心的激动无以复加————————————尼玛终于对了。先反省一下。。程序终于写出来了,当时比赛的时候没有写这个应该是时间不够,而且就算时间够用的话,也会因为时间复杂度过高,而超时。所以究其根本原因还是因为 你会得太少 你不知道应该怎样去快速排序而导致了,那一道 游乐场超时,你不会快速求素数而导致质方数超时。 小伙子 还是缺少锻炼,应该多练练,多学一点这种必须知道的东西,还有最近把这几道题弄完之后就开始看书吧。学习一下解题的思想。嗯嗯。不多臭屁了。现在把这一道题写一下。
本题如果用两个for循环 求素数的话,一定是会超时的。所以在想的奶疼的时候聪明机智的我就去百度了一下大神的博客,大神的博客讲解了如何快速求素数,详细的在外面自己去看。
然后在将大神的判断素数改成数组储存素数的时出了问题
原先写的时候是没有写20 24 25 26这几行代码的,所以出了错误。在进入到循环之后break跳出了循环然而还是把不是素数的数字当成了素数。
现在去检验一下 两个for循环写出来的,求素数快,还是大神写的快速求素数的办法快。
这是我写代码虽然空间复杂度低了一点点,但是时间复杂度却飙升。么么。
确实还是大神比较厉害一点。
Problem Description 小明天生对数字比较敏感,3岁的时候就能背诵圆周率一百位。 现在,小明慢慢长大了,但依然很喜欢数字,最近,他迷上了质数和平方数,并且自己把质数的平方命名为“质方数”。 现在,他在研究这样一个问题:距离一个正整数N最接近的质方数是多少? Input 输入数据第一行是一个正整数T(T<=20),表示有T组输入数据。 接下来T行,每行输入一个正整数N(1<=N<=10^8)。 Output 对于每组数据,请输出距离N最接近的质方数,每组输出占一行。 Sample Input 2 1 10 Sample Output 4 9
本题如果用两个for循环 求素数的话,一定是会超时的。所以在想的奶疼的时候聪明机智的我就去百度了一下大神的博客,大神的博客讲解了如何快速求素数,详细的在外面自己去看。
然后在将大神的判断素数改成数组储存素数的时出了问题
void prime() { for(i=2,w=0;i<1000100;i++) { int q; q=0; if(i==2||i==3) { a[w++]=i*i; continue; } if(i%6!=1&&i%6!=5) { continue; } for(j=5;j*j<=i;j=j+6) { if(i%j==0||i%(j+2)==0) { q=1; break;; } } if(q==1) continue; a[w++]=i*i; } }
原先写的时候是没有写20 24 25 26这几行代码的,所以出了错误。在进入到循环之后break跳出了循环然而还是把不是素数的数字当成了素数。
现在去检验一下 两个for循环写出来的,求素数快,还是大神写的快速求素数的办法快。
void prime() { for(i=2,w=0;i<1000100;i++) { for(j=2;j<=i;j++) { if(i%j==0) a[w++]=i; } } }
这是我写代码虽然空间复杂度低了一点点,但是时间复杂度却飙升。么么。
确实还是大神比较厉害一点。
相关文章推荐
- Java基础之面向过程
- leetcode 82:Remove Duplicates from Sorted List II
- hdoj5563Clarke and five-pointed star【判断五角星】
- 【转】获取URL中的 参数
- 一个简单的溢出程序解析
- BZOJ 1011: [HNOI2008]遥远的行星( )
- mac重装系统
- 走过电竞之路的程序员
- iOS笔记19
- 首次适应算法和最佳适应算法和循环首次适应算法和最坏适应算法
- 走过电竞之路的程序员
- 走过电竞之路的程序员
- centos下mysql主从搭建总结
- react 入门知识
- 【学习总结】【多线程】 线程 & 进程 & NSThread(多线程的一套API)
- 网页设计易错点总结
- cocos2dx之SpriteBatchNode的作用
- hpuoj 1718: 感恩节KK专场——KK和女票一起遛狗 (水题)
- 人类的行为与程序计算
- ASCII学习对照表