Primes on Interval

AC代码:

#include <cstdio>

#include <cstring>

#include <iostream>

#include <algorithm>

using namespace std;

const int maxn = 1001000;

#define  inf (1<<29)

//上面的位运算还真心没有看懂

// p[i] is i-th prime's position

bool pp[maxn]; //里面保存的是一个素数的信息

int p[maxn] , cnt = 0; //将素数保留在数组中间

int ss[maxn] , tt[maxn];//在这里申请了这么多的数组我就是没有看懂了是到底为啥

void init() {

    cnt = 0;

    pp[0] = pp[1] = 1;//前两个数字都是不予考虑的

    tt[0] = tt[1] = -1;

    for(int i=2;i<maxn;i++) {

        if(!pp[i]) {

            p[cnt++] = i; //这个是将素数保留在表格中间吗?

            for(int j=i+i;j<maxn;j+=i) {

                pp[j] = true; //这个是素数达标

            }

        }

        tt[i] = cnt - 1;

    }

    for(int i=0;i<maxn;i++) {

        if(!pp[i]) ss[i] = tt[i];

        else ss[i] = tt[i] + 1;

    }

}

int main() {

    init();

    int a , b , k;

    while(~scanf("%d%d%d" , &a,&b,&k)) {

        int s = ss[a] , t = tt[b];

        int num = t - s + 1;

     

        if(num < k) {//先判断在这个区间之中里面的素数量是否达到了题目的要求,否则直//接退出

            printf("-1\n");

            continue;

        }

        int ans = 0;

        int tmp;

        tmp = b - p[t-k+1] + 1;

        if(tmp > ans) ans = tmp;

        tmp = p[s+k-1] - a + 1;

        if(tmp > ans) ans = tmp;

        for(int i=s;i+k<=t;i++) {

            tmp = p[i+k] - p[i];

            if(tmp > ans) ans = tmp;

        }

        printf("%d\n" , ans);

    }

    return 0;

}

//本题的主要思路是通过打表,成功后就可以比较简单的得到结果

转载于:https://www.cnblogs.com/tianxia2s/p/3871950.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/299407.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

我丢,去面试初级Java开发岗位,被问到泛型?

1、泛型的基础概念 1.1 为什么需要泛型 List list new ArrayList();//默认类型是Objectlist.add("A123");list.add("B234");list.add("C345");System.out.println(list);for(int i0;i<list.size();i){//若要将list中的元素赋给String变量&a…

xp下设置文件的权限(转)

第一步&#xff1a; 1&#xff0c;我的电脑&#xff0d;&#xff0d;工具&#xff0d;&#xff0d;文件夹选项&#xff0d;&#xff0d;查看 去掉”使用简单文件共享”的选中状态&#xff0e;确定 第二步&#xff1a; 右击 D 盘 &#xff0d;&#xff0d; 安全 &#xff0d;&am…

echart 地图 某个地区_中国饮食地图来袭!你爱的口味暗藏健康隐患吗?

食&#xff0c;既是人生存之根本&#xff0c;也是人们热爱生活的体现。中国地域广阔、物产富饶&#xff0c;中国人对“吃”看重也愿钻研&#xff0c;种种因素造就了中国美食 “百花齐放”的局面&#xff0c;在“吃货”眼里&#xff0c;中国地图俨然就是一张美食地图。不同地区的…

面试官:实现一个带值变更通知能力的Dictionary

如题&#xff0c; 你知道字典KEY对应的Value什么时候被覆盖了吗&#xff1f;最近大家都在追.Net6 update&#xff0c;咱还是保持节奏&#xff0c;通用语言聊技术。没背景说个铲铲上文中 数据获取组件维护了业务方所有(在用)的连接对象&#xff0c;DBA能在后台无侵入的切换备份库…

颠覆认知!完美赌徒,到底是如何用数学打造经济神话?!

▲ 点击查看说起世界上最会赚钱的数学家&#xff0c;非詹姆斯西蒙斯莫属。1938年&#xff0c;西蒙斯出生于美国的马萨诸塞州&#xff0c;是一个鞋厂的儿子。在其他的孩子&#xff0c;还在听童话故事的时候&#xff0c;西蒙斯就已经开始展露出惊人的数学天赋了。3岁的时候&…

数据源的配置和使用 视频下载

[浪曦][原创][A362]数据源的配置和使用(BLing原创)&#xff0c;请用迅雷下载&#xff0c;可能需要注册&#xff01; 包括servlet调用数据源&#xff0c;spring调用数据源转载于:https://blog.51cto.com/huqianhao/955256

ubuntu apt-get常用命令

常用的APT命令参数   apt-cache search package 搜索包   apt-cache show package 获取包的相关信息&#xff0c;如说明、大小、版本等   sudo apt-get install package 安装包   sudo apt-get install package - - reinstall 重新安装包   sudo apt-get -f ins…

abs函数的使用方法 oracle_SQL Server 常用函数使用方法

1、SubString()&#xff1a;用于截取指定字符串的方法。该方法有三个参数&#xff1a;参数1&#xff1a;用于指定要操作的字符串。参数2&#xff1a;用于指定要截取的字符串的起始位置&#xff0c;起始值为 1 。参数3&#xff1a;用于指定要截取的长度。select substring(abcde…

高考落榜怎么办,奉劝学弟学妹们一些事情,请一定要擦亮眼睛

在目前这个社会情况Java技术是当前社会的一个热门专业&#xff0c;无论是pc端还是移动端对java的需求都是最多的&#xff0c;大学生学java正好顺应时代的发展&#xff0c;不仅有钱途还有前途&#xff0c;Java也适合零基础的人学习。 最近看见一句话 高考不努力&#xff0c;学习…

url地址传参中文乱码处理

1.将字符串转码&#xff1a;new String(“xxxxx”.getBytes("iso-8859-1"),"utf-8") 这种转码方式有很大的弊端&#xff0c;因为它是使用指定的字符集将此String 编码为 byte 序列&#xff0c;并将结果存储到一个新的 byte 数组中&#xff0c;然后…

神仙打架!一人公开单挑全欧洲数学家,却惨遭4位数学家大反转,66年的难题被一晚破解......

全世界只有3.14 % 的人关注了青少年数学之旅两点之间直线最短&#xff0c;这家喻户晓的数学名言&#xff0c;就算是学渣也能倒背如流。但学渣们不知道的是&#xff0c;这条直线并不是最快的。为了让学渣们真正理解这句话&#xff0c;今天&#xff0c;超模君决定科普一波起源关于…

基于事件驱动架构构建微服务第4部分:repositories

原文链接&#xff1a;https://logcorner.com/building-microservices-through-event-driven-architecture-part4-repositories/在本文中&#xff0c;我将实现Repositories的命令端。存储库属于Clean架构的接口适配器在这一步中&#xff0c;我将开始实现基础设施的命令端&#x…

小松

之前做过一次小小的介绍(没看过的请参看此文&#xff1a;闲话小松)&#xff0c;相信不少老朋友应该都知道我是谁了。还不认识我的朋友可以称呼我小松(这名号有年头了&#xff0c;听习惯了^_^)&#xff0c;当然你喜欢怎么喊都成&#xff1a;)偶是个是理想主义的倡导者&#xff0…

vlan后 出现 outlook 正在试图从服务器检索数据

vlan后 出现 outlook 正在试图从服务器检索数据 cisco vlan outlook 正图试从Microsoft Exchange Server 检索数据。cisco 3750 vlan outlook is retrieving data from Microsoft Exchange Server mail.abc.com 最近对公司的网络按需要划分了基出802.1q的VLAN&#xff0c;…

二面京东,面试官直接问我JVM,我心里一阵暗爽~

二面京东&#xff0c;面试官直接问我JVM&#xff0c;我心里一阵暗爽~简直了&#xff0c;hhhh明人不说暗话&#xff0c;直接进入主题&#xff01;&#xff01;&#xff01;一、什么是JVM二、JAVA代码编译和执行过程类加载机制类执行机制三、JVM内存管理和垃圾回收垃圾回收按照基…

最后的代课老师———漆红玉[转]

1月31日凌晨6点我们从渭源县城出发&#xff0c;天还未亮。1月的甘肃干冷干冷的&#xff0c;我们是在半路上接的漆老师&#xff0c;刚开始我以为是寇筱茜老师的一个熟人&#xff0c;路上寇老师才和我说漆老师也是代课老师。寇筱茜老师有一句名言&#xff1a;每一个代课老师都有一…

ae渲染出现错误是什么问题_[Switch]解决OPENWRT路由,使用UU加速器等出现相同IP,DNS解析错误问题...

本文在之上添加DNS解析错误的解决方案解决 NS openwrt路由器 开腾讯 UU之类的加速器无法上网的问题​tieba.baidu.com将子网掩码转换为二进制&#xff0c;即为11111111.11111111.0.0&#xff0c;1有16位&#xff0c;令x16&#xff1b;IP地址若为aaa.bbb.ccc.ddd&#xff0c;设置…

程序员从入门到升级,或许可以看一看这几个公众号

全世界只有3.14 % 的人关注了青少年数学之旅快节奏的现代社会中&#xff0c;每个人都疲于奔命&#xff0c;“丧、累、太难了”已成为成年人的生活主题。难得的闲暇时间&#xff0c;公众号是不可或缺的消遣方式。但我们被海量数据淹没&#xff0c;越来越多的公众号只是消耗情绪&…

浅谈C#取消令牌CancellationTokenSource

前言相信大家在使用C#进行开发的时候&#xff0c;特别是使用异步的场景&#xff0c;多多少少会接触到CancellationTokenSource。看名字就知道它和取消异步任务相关的&#xff0c;而且一看便知大名鼎鼎的CancellationToken就是它生产出来的。不看不知道&#xff0c;一看吓一跳。…

jquery预加载

$(function(){});DOM创建完成就开始加载JS代码。 $(window).load(function(){});所有资源都下载好以后再开始加载JS代码。转载于:https://www.cnblogs.com/invincible-hehe/p/3886581.html