求素数

输入M、N,1 < M < N < 1000000,求区间[M,N]内的所有素数的个数。素数定义:除了1以外,只能被1和自己整除的自然数称为素数

输入描述:

两个整数M,N

输出描述:

区间内素数的个数
示例1

输入

2 10

输出

4

#include<iostream>
#define K 1000001
using namespace std;
char p[K+1] = {1,1,0};  //数组前三个数 0 1 2 分别为 合数、合数、素数
int main()
{int i,j;for(i = 2; i <= K/10; ++i) //防止p[i*j]越界
    {if(!p[i])for(j = 2; i*j <=K ; ++j)  //判断是否为合数 p[i*j] = 1; //是合数
     } int M,N,count;cin>>M;cin>>N;count=0;for(i=M; i<=N; i++)if(!p[i])  //如果p[i]为合数,则跳过,如果为素数,执行count count++;cout<<count;
}

分析:

由素数的概念在大于1的整数中,只能被1和自己本身整除的数。

在大于1的整数中,只要类似 m*n 得到的数都不是素数。用 1 表示非素数,用 0 表示素数。则: p[i*j] = 1 即为找出所有的非素数。

K/10 是为了防止 p[i*j] 越界,当然除以20、30也是可以的!

参考资料链接:

【模板小程序】求小于等于N范围内的质数

牛客网解答

最大差值

给定一个未排序的数列,找到此数列在已排序状态下的两个相邻值的最大差值,少于两个值时返回0。例如:给定数列 [1,3,2,0,1,6,8] 则 最大差值为3。注意:请尽量使用时间复杂度为O(n)的方案。

输入描述:

第一行输入单个整数N作为数列的大小,第二行输入所有数列中的元素M,共N个。0 < N <= 1000000, 0 < M < 2100000000

输出描述:

数列的最大差值
示例1

输入

3
1 10 5

输出

5

#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main(){int N;while(cin>>N){vector<int> array(N);for(int i=0;i<(int)array.size();++i){cin>>array[i];}sort(array.begin(),array.end());  //先排序 vector<int> chazhi(N);  //开一个数组,存入相邻元素差值chazhi[0] = 0;  //数组初始化 int max_chazhi = 0;for(int i=1;i<(int)chazhi.size();++i){chazhi[i]=array[i]-array[i-1];max_chazhi = chazhi[i]>max_chazhi ? chazhi[i]: max_chazhi;}cout<<max_chazhi<<endl;}return 0;
}

分析:

研究了一下别人的代码,整体思路就是先对输入的数列进行从小到大的排序,接着创建一个数组,存入排序后相邻两个数之间的差值,接着再挨个比较大小,最后输出最大差值。

参考资料链接:

牛客网解答

vector

algorithm->sort

转载于:https://www.cnblogs.com/OctoptusLian/p/8665631.html

【吉比特】G-bits2017技术类岗位编程题相关推荐

  1. 吉比特2017年秋招编程题:字符串排序

    date:2017/8/27 厦门吉比特网络技术股份有限公司在线笔试 (#isalpha函数判断字母 #isdigit函数判断数字) 输入一串字符串(包含字符和数字)如:sd341a 将字符串进行排序 ...

  2. 腾讯音乐娱乐集团2023校园招聘技术类岗位编程题合集

    字符串操作 题解:先变为没出现过的字符,然后在正常的变换 class Solution { public:/*** 代码中的类名.方法名.参数名已经指定,请勿修改,直接返回方法规定的值即可** 返回满 ...

  3. 吉比特2018春招技术类笔试试卷编程题 - 题解

    吉比特的编程题倒是不难,但是它的选择题和填空题是真的多... 由于没有拍题目,所以我就按照我的记忆来描述一下题目了. 第一题 题目 判断两个数,换成二进制格式,输出多少个位置不一样 解析 这题很基础, ...

  4. 【吉比特】G-bits2018校园春季招聘技术类岗位笔试经验

    笔试公司:厦门吉比特网络技术股份有限公司 笔试岗位:游戏研发工程师 笔试时间:2018年3月30日19:00-20:30 笔试形式:牛客网在线做题 笔试回忆: 笔试总共时长1小时半,共52道题.其中选 ...

  5. 技术类编程题汇总 C++ 刷题记录

    文章目录 腾讯2018春招技术类编程题汇总 1.翻转数列 2.纸牌游戏 3.贪吃的小Q 4.小Q的歌单 5.安排机器 6.画家小Q 腾讯2017秋招笔试编程题 1.编码 2.游戏任务标记 3.素数对 ...

  6. 去哪儿网2018春招软件开发工程师、前段开发工程师编程题 - 题解

    不难,都是常规的操作,故题解写得简单点. 软件开发工程师编程题 第一题:在字典中找自己的逆序 题目 有一个单词列表,一个初始单词,初始单词需要通过单词列表逐步变换得到自己的逆序,求变换所需的最短变换路 ...

  7. 牛客网2018吉比特校招技术开发类试题分析

    最近做了两套笔试题,复习一下错题,有很多地方需要查缺补漏,再谈一下感受总结一下. 2018届吉比特校招技术类笔试B卷 吉比特2018届提前批校园招聘-开发类试卷 一.基础题 1.已知 a = 6789 ...

  8. 百亿题典之C++编程题面试题

    原文地址:百亿题典之C++编程题面试题作者:百亿题典 1. 在linked list中找倒数第N个结点 2. 倒转linked list 3. 二叉树的结点有指向parent的指针,求最近公共祖先 4 ...

  9. 基础编程题目集 编程题部分

    文章目录 7-1 厘米换算英尺英寸 (15分) 7-2 然后是几点 (15分) 7-3 逆序的三位数 (10分) 7-4 BCD解密 (10分) 7-5 表格输出 (5分) 7-6 混合类型数据格式化 ...

最新文章

  1. AI战场,李彦宏马化腾马云都在频频刷脸,周鸿祎和他的360在想啥呢?
  2. c语言程序做四则运算还要余数,大整数四则运算 高质量C语言程序.doc
  3. Algorithm——最长公共前缀
  4. 隐马尔科夫模型(HMM)解释 和 前向与后向算法[转] 讲解通俗易懂 赞
  5. 一个有关ajax去获取天气预报然后用echarts展现出来的小demo
  6. extern“C”有什么作用
  7. RMAN异机恢复步骤及故障处理
  8. linux中find命令列举,Linux中常见find命令的使用
  9. Nhibernate 对view 查询的几种方法
  10. js 在新窗口中打开URL
  11. 牛客题霸 [三个数的最大乘积]C++题解/答案
  12. LeetCode 496. Next Greater Element I
  13. java编程 队列_5.1、顺序队列(java实现)
  14. windows下springboot项目部署elk日志系统教程elasticsearch与logstash与kibana
  15. 【转贴】ListView控件学习系列2-编辑ListView
  16. mysql集群 自增_为什么我们要从MySQL迁移到TiDB?
  17. 代码行数统计工具cloc
  18. 仿短视频竖屏播放美nv源码 源码仅供技术参考
  19. icon 的css,【iview】icon样式
  20. 电脑上怎么截图按什么键?电脑截图的快捷键是什么?

热门文章

  1. docker添加jar包_docker配置容器运行jar包
  2. spring boot 启动卡住_SpringBoot 居然有 44 种应用启动器
  3. python中添加高斯噪声_关于python:高斯噪声与高斯白噪声
  4. linux命令看文件内容,Linux文件内容查看相关命令
  5. ubuntu mysql innodb_Ubuntu MYSQL环境搭建
  6. 为什么parsefloat加出来还是字符串_Python 100天从新手到大师 | Day 7 字符串与数据结构...
  7. ue4 怎么修改骨骼动画_【UE4】动画重定向
  8. 速看 | 电子元器件如何确定好坏?
  9. 最受欢迎的男友职业排行榜 Top10 ,程序员排第 3
  10. 24年前华为招聘广告是什么样的?