首页 > 其他分享 >求n以内最大的k个素数以及它们的和

求n以内最大的k个素数以及它们的和

时间:2023-04-13 21:37:17浏览次数:22  
标签:输出 它们 以内 样例 int 素数 输入 10

本题要求计算并输出不超过n的最大的k个素数以及它们的和。

输入格式:

输入在一行中给出n(10≤n≤10000)和k(1≤k≤10)的值。

输出格式:

在一行中按下列格式输出:

素数1+素数2+…+素数k=总和值

其中素数按递减顺序输出。若n以内不够k个素数,则按实际个数输出。

输入样例1:

1000 10

输出样例1:

997+991+983+977+971+967+953+947+941+937=9664

输入样例2:

12 6

输出样例2:

11+7+5+3+2=28

示例

#include <stdio.h>
#include <math.h>


int f(int n) {
	int i;
	int flag = 1;

	for(i = 2; i <= sqrt(n); i++) {
		if(n % i == 0) {
			flag = 0;
			break;
		}
	}
	return flag; //1素数 0合数
}


int main() {
	int n = 1000;
	int k = 10;
	int sum = 0;

	int i;

	scanf("%d %d", &n ,&k);

	int flag = 0;
	for(i = 0; i < k; i++) {
		if(n - 1 != 1) {
			while(1) {
				n--;
				if(f(n) == 1) break;
			}
			if(flag == 0) {
				printf("%d", n);
				flag = 1;
			} else
				printf("+%d", n);

			sum += n;
		}
	}
	printf("=%d",sum);


	return 0;
}

标签:输出,它们,以内,样例,int,素数,输入,10
From: https://www.cnblogs.com/xxing/p/17316460.html

相关文章

  • python习题-筛法求素数
    【题目描述】用户输入整数n和m(1<n<m<1000),应用筛法求[n,m]范围内的所有素数。【基本思想】用筛法求素数的基本思想是:把从2到N的一组正整数从小到大按顺序排列。从中依次删除2的倍数、3的倍数、5的倍数,直到根号N的倍数为止,剩余的即为2~N之间的所有素数。【源代码程序】defsie......
  • 牛客网一道素数问题
    我收回昨天的话,浪费时间或许不是能力问题,但是写出屎山,真真正正是能力问题今天编出来的程序破天荒地达到了34ms,然而大佬们都是1ms,于是点开大佬们的代码查看,发现他们的写法,他们使用的算法,寥寥几行代码,我看了半天不得其义,尝试着运行,非常流畅,让人目瞪口呆。多看一些代码之后,发现写法......
  • P1835 素数密度
    给定区间[L,R](1≤R<(1<<30) R−L≤1e6),请计算区间中素数的个数。筛出sqrt(R)的质数p,遍历L~R的数,看能否被p约分,也就是合数,打个标记 #include<iostream>#include<cstring>#include<cmath>#include<algorithm>usingnamespacestd;constintM=1e6+30;......
  • (5)使用函数验证哥德巴赫猜想:任何一个不小于6的偶数均可表示为两个奇和。输入两个正整数
    #include<stdio.h>#include<math.h>intprime(intm){  inti;  if(m<2)    return0;  for(i=2;i<=sqrt(m);i++){    if(!(m%i))      return0;  }  return1;}intmain(){  intm,n,flag;  printf("Enterm,......
  • Python求100以内的素数常用方法!
    与其他编程语言对比,Python拥有十分独特的优势代码量少,相同功能其他编程语言需要上百行代码才可以实现,而Python只需要十几行就可以实现。而且在Python中,我们只需要学会一些基础的语法就可以实现简单的数值计算,那么Python求100内的所有素数方法是什么?具体内容请看下文。质数......
  • 外汇市场上非法平台泛滥,我们该如何避免它们的骗局套路?
    作为世界上最大的金融市场之一,在外汇市场上,经常会有投资者因为信息不对称而遭受欺诈。天眼君这次向大家介绍关于外汇市场上最常见的骗局,通过此文希望大家能在选择投资平台前擦亮眼睛,将遭遇非法平台这件事扼杀在投资初期。我们目前最常见的也是最直接明了的骗局,大概就是制造假的或者......
  • 记录欧式筛法筛选素数
    点击查看代码voidgetPrime(longlongn,vector<int>&prime,vector<bool>&isPrime){isPrime[1]=false;for(inti=2;i<n;++i){if(isPrime[i]){prime.emplace_back(i);}for(constint&a......
  • 判断100内的素数
    #include<stdio.h>#include<math.h>intmain(){inti=0;for(i=1;i<=100;i++){intj=0;for(j=2;j<=sqrt(double(i));j++){if(i%j==0){break;}}if(j>sqrt(double(i))){printf("%d",i);}}return0;}  问题:    在运行......
  • 给定一个整数数组nums和一个整数目标值target,请你在该数组中找出和为目标值target的
    /***给定一个整数数组nums和一个整数目标值target,请你在该数组中找出和为目标值target的那两个整数,并返回它们的数组下标。**你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。**你可以按......
  • C - 素数密度
    题解在代码里,如下点击查看代码#include<bits/stdc++.h>typedeflonglongLL;usingnamespacestd;//如果一个数n不是质数,就一定有非一的因数x<=sqrt(n);constintN=5e4;//因为所给题目最大到(1<<31)所以只需要求出来1~N之间的所有质数就行constintM=1e6+7;intid......