对于一个非常大的数,如何快速高效返回比它小的最大质数【腾讯笔试题】
来源:互联网 发布:软件动态分析工具 编辑:程序博客网 时间:2024/05/16 01:07
核心思想是求出比它小的数的开方数:Y,再利用用被开方的数:X除以(2到Y)
以下程序不仅适合“一个非常大的数”,也适合一个普通大小的数。欢迎指正bug。
int ReBiggestZhiShu(int num){ int i,j,tmp; if(2>=num) return NULL; else if(3==num) return 2; num=num-1;//题目是说比它小,所以排除它本身就是质数,本人觉得一定要减一 for(i=num;i>2;i--) { j=sqrt(i); while(j>1) { tmp=i%j; if(0==tmp)break; else j--; } if((0!=tmp)||(1==j)) return i; }}
0 0
- 对于一个非常大的数,如何快速高效返回比它小的最大质数【腾讯笔试题】
- 每日一题(61) - 找出左边比它小,右边比它大的数
- 数组中存在这样的数,这个数比它左边的所有的数大,并且比它右边的所有的数小,返回它的索引;如果不存在,返回-1
- 如果数组中存在这样的数,这个数比它左边的所有的数大,并且比它右边的所有的数小,返回它的索引;如果不存在,返回-1。
- 找出比N小的最大质数
- 5.3-比x大的数中最小和比x小的数中最大
- 一个数组中列出一个数比前面数大,比后面数小的集合
- 数字串前第一小比它小的数
- 给定一个数,要求输出比它大的最小的非重复数
- 2016腾讯笔试编程题java实现求一个数等于两个质数的和的组合数(2016-09-11 19:00)
- 给定一个数,求比它大的第一个对称数
- 比一个整数大的最小的质数-java
- (百度笔试题)给定任意一个正整数,求比这个数大且最小的“不重复数”。
- 输入一组数据,在输入一个数,找到比它大的并排序
- 笔试面试3 将一个数分解成质因数的形式以及如何判断一个数是否是质数
- 二分查找 找一个比目标数小的最大数
- 腾讯的一个笔试题
- poj 2299 Ultra-QuickSort(利用树状数组变形,求一个数左边比它大的数的个数)
- DRP PK 牛腩新闻发布系统
- Linux环境下c语言程序执行shell脚本
- 百万记录poi导出日记
- Qt开发基础
- RHEL 4 性能优化详述(/proc/sys/kernel/优化)
- 对于一个非常大的数,如何快速高效返回比它小的最大质数【腾讯笔试题】
- 函数式编程
- 各数据库的分页SQL语句
- 分析用户的网页浏览行为与习惯
- Unix/Linux进程间通信——(System V)消息队列
- 小米2及其他Android手机无法连接mac解决方案
- relocation R_X86_64_32 against `.rodata' can not be used when making a shared object;
- matlab 图像处理命令
- oracle中使用cube子句