当前位置: 首页 > news >正文

专业微信网站建设公司首选大连承接网站制作

专业微信网站建设公司首选,大连承接网站制作,自己如何做app,江苏网站建设网络公司目录 题目翻译题目描述输入格式输出格式样例 #1样例输入 #1样例输出 #1 样例 #2样例输入 #2样例输出 #2 样例 #3样例输入 #3样例输出 #3 题目简化题目思路AC代码 题目翻译 【题目描述】 你决定用素数定理来做一个调查. 众所周知, 素数又被称为质数,其含义就是除了数…

目录

    • 题目翻译
    • 题目描述
    • 输入格式
    • 输出格式
    • 样例 #1
      • 样例输入 #1
      • 样例输出 #1
    • 样例 #2
      • 样例输入 #2
      • 样例输出 #2
    • 样例 #3
      • 样例输入 #3
      • 样例输出 #3
    • 题目简化
    • 题目思路
    • AC代码

题目翻译

【题目描述】
你决定用素数定理来做一个调查. 众所周知, 素数又被称为质数,其含义就是除了数字一和本身之外不能被其他任何的数字除尽.

现在给定一个正整数序列 a , a + 1 , ⋯ , b a,a+1,\cdots,b a,a+1,,b ( a ≤ b ) (a \le b) (ab), 请找出一个最小值 l l l, 使其满足对于任意一个长度为 l l l 的子串, 都包含 k k k 个质数.

找到并输出符合要求的最小值 l l l, 如果不存在符合要求的长度 l l l, 则输出 − 1 -1 1.

【输入格式】

输入一行, 包含三个用空格隔开的整数 a , b , k a,b,k a,b,k ( 1 ≤ a , b , k ≤ 1 0 6 ; a ≤ b 1 \le a,b,k \le 10^{6}; a \le b 1a,b,k106;ab)

【输出格式】
输出一行, 为符合要求的最小值 l l l, 若不存在, 输出 − 1 -1 1.

题目描述

You’ve decided to carry out a survey in the theory of prime numbers. Let us remind you that a prime number is a positive integer that has exactly two distinct positive integer divisors.

Consider positive integers $ a $ , $ a+1 $ , $ … $ , $ b $ $ (a<=b) $ . You want to find the minimum integer $ l $ $ (1<=l<=b-a+1) $ such that for any integer $ x $ $ (a<=x<=b-l+1) $ among $ l $ integers $ x $ , $ x+1 $ , $ … $ , $ x+l-1 $ there are at least $ k $ prime numbers.

Find and print the required minimum $ l $ . If no value $ l $ meets the described limitations, print -1.

输入格式

A single line contains three space-separated integers $ a,b,k $ ( $ 1<=a,b,k<=10^{6}; a<=b $ ).

输出格式

In a single line print a single integer — the required minimum $ l $ . If there’s no solution, print -1.

样例 #1

样例输入 #1

2 4 2

样例输出 #1

3

样例 #2

样例输入 #2

6 13 1

样例输出 #2

4

样例 #3

样例输入 #3

1 4 3

样例输出 #3

-1

题目简化

求一个区间内,任意长度为 l l l 的子串中都包含 k k k 个质数的最小 l l l

题目思路

初始化一个数组存储从 2 2 2 开始的所有素数。初始化后,这个数组中所有值都是 true,表示对应的数是素数。

使用埃拉托斯特尼筛法(Sieve of Eratosthenes)来找出所有小于 M A X MAX MAX 的素数。这个算法的主要思想是,如果一个数不是素数,那么它必定有一个因子小于或等于其平方根。因此,我们只需要检查到每个数的平方根即可。

在主循环中,读取三个输入: a a a, b b b k k k。然后,创建一个队列 q q q 并把 a − 1 a-1 a1 放入队列。

接下来,进行一系列操作来找出在区间 [ a , b ] \text [a, b] [a,b] 中,长度为 k k k 的所有素数子序列。如果存在这样的子序列,那么就更新 r e s res res 的值。

如果 q q q 的头部元素是 a − 1 a-1 a1,那么就输出 -1 \texttt -\texttt 1 -1,否则输出 r e s res res

AC代码

#include <bits/stdc++.h>
using namespace std;
#define li        long long int
#define rep(i,to) for(li i=0;i<((li)(to));++i)
#define pb        push_back
#define sz(v)     ((li)(v).size())
#define bit(n)    (1ll<<(li)(n))
#define all(vec)  (vec).begin(),(vec).end()
#define each(i,c) for(__typeof((c).begin()) i=(c).begin();i!=(c).end();i++)
#define MP        make_pair
#define F         first
#define S         second#define MAX 1000500
li is_prime[MAX];int main()
{rep(i, MAX)if(2 <= i) is_prime[i] = true;for(li i = 2; i * i < MAX; i++){if(!is_prime[i]) continue;for(li j = i * i; j < MAX; j += i) is_prime[j] = false;}li a, b, k;cin >> a >> b >> k;queue<li> q;li res = -1;q.push(a - 1);for(li pos = a; pos <= b; pos++){if(is_prime[pos]) q.push(pos);while(k < sz(q)) q.pop();if(sz(q) == k) res = max(res, pos - q.front() + 1);}if(q.front() == a - 1) cout << -1 << endl;else cout << res << endl;
} 

创作不易,白嫖不好,各位的支持和认可,就是我创作的最大动力,如果喜欢我的文章,给个关注吧!

冰焰狼 | 文

如果本篇博客有任何错误,请批评指教,不胜感激 !

http://www.yayakq.cn/news/384154/

相关文章:

  • 银行管理系统网站建设公司集团网站开发
  • 企业做网站平台的好处郑州网站建设、
  • 做外贸是用什么网站做陶瓷网站建设中企动力
  • 做网站策划薪酬做物流哪个网站推广好
  • 网站前端建设网站主页怎么做
  • 广州北京网站建设公司哪家好广西建设职业技术学校官方网站
  • 做企业网站需要哪些材料WordPress连接微博
  • 做公司网站 需要注意什么wordpress如何调用分类目录
  • 服装网站建设的需求网站优化软件费用
  • 网站内容规划模板php可以做网站布局吗
  • 中山市住房建设局网站怎么做网站才能不被仿冒
  • 做盗版电影网站吗简单美食网站模板
  • 名校建设网站wordpress 游戏主题
  • 自己做网站语言构建服务器百度域名排行
  • 代做寄生虫网站公司网站建设南宁
  • 一个app软件西安seo服务培训
  • 石家庄市市政建设总公司网站怎么强制下载网页视频
  • 网站删除模块wordpress 阅读次数
  • 电子商务网站设计的原则和内容嘉定网站建设哪家便宜
  • 凌源网站建设ae如何做视频模板下载网站
  • 关于网站建设的工作计划公司logo查询网站
  • 泰州网站设计公司网站建设托管公司
  • 上海知名的网站公司做影视网站版权问题
  • 杭州网站建设公司慕枫手机网店开店网站
  • 上海网站建设公司 珍岛建设营销型网站模板
  • 帮人做网站的公司建立网站有哪些步骤?
  • html如何做购物网站大型网站架构实战
  • 搭建网站的过程wordpress云储存缩略图
  • 推荐六款适合做小说阅读站及小说下载站的wordpress 模板赣州人才网最新招聘信息网
  • 做网站需要服务器和什么佛山 网站开发