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

简约大方网站网络营销推广方案步骤

简约大方网站,网络营销推广方案步骤,河南宏业建设管理有限公司网站,wordpress 的主题在哪个文件夹选素数 小蓝有一个数 x,每次操作小蓝会选择一个小于 x 的素数 p,然后在 x 成为 p 的倍数前不断将 x 加 1,(如果 x 一开始就是 p 的倍数则 x 不变)。 小乔看到了小蓝进行了 2 次上述操作后得到的结果 n,他想…

选素数

小蓝有一个数 x,每次操作小蓝会选择一个小于 x 的素数 p,然后在 x 成为 p 的倍数前不断将 x 加 1,(如果 x 一开始就是 p 的倍数则 x 不变)。
小乔看到了小蓝进行了 2 次上述操作后得到的结果 n,他想知道 x 在一开始是多少。如果有多种可能,他想知道 x 一开始最小可以是多少,而如果不存在任何解,说明小乔看错了,此时请输出 −1。
输入格式
输入一行包含一个整数 n,表示经过两次操作后 x 的值。
输出格式
输出一行包含一个整数表示 x 的初始值。如果有多个解,输出最小的。如果不存在解,请输出 −1

这个题主要考察质因数分解和质数判断
首先质数的判断,这个太常见了,这里就不多赘述

private static boolean isPrime(int n){if (n<2)return false;if (n==2||n==3)return true;if (n%6!=1&&n%6!=5)return false;for (int i = 5; i*i<= n ; i+=6) {if (n%i==0||n%(i+2)==0){return false;}}return true;}

然后是质因数分解,这里用了 List 集合去装分解出来的质数

private static List<Integer> prime(int n){List<Integer> ans  = new LinkedList<>();for(int i = 2; i <= n/i ; i++){//判断条件用n/i,以防i*i<=n发生溢出int a = 0;//每次循环都要清零while(n % i == 0){n /= i;a++;}if(a > 0)ans.add(i);}//若该数是质数,那么应该将自身(n)也加入if(n > 1) ans.add(n);return ans;}

最后就是根据题意进行模拟,a0→a1→ a2
(依次进行第一次操作、第二次操作)。

import java.util.*;//导入万能类 当然也不是很万能
public class Main {static List<Integer> oList = new LinkedList<>();//需要用到的集合public static void main(String[] args) {//标准输入 一个nScanner sc  = new Scanner(System.in);int n = sc.nextInt();if (isPrime(n)){//如果输入数为质数,那么打印-1。因为我们的n应该是质数的倍数,且必须至少为2倍(题目中说了选择一个小于x的素数p,所以至少是2倍)。System.out.println("-1");}else {oList = prime(n);//对其质因数分解,并用集合装好int minstart = Integer.MAX_VALUE;//定义所求的最小开始的a0,赋值为Integer最大值,为了后面获取最小值for (int i = 0; i < oList.size(); i++) {//遍历质因数集合int last_left = n-oList.get(i);//下面对第一次操作后可能的数组遍历for (int j = last_left+1; j <= n ; j++) {//这里的范围为什么是从last_left+1到n//假设第二次操作选择的是oList.get(i)作为质数,那么第二次操作前的数(a1)不会小于n-oList.get(i)//上次操作前的数字(a1)必然在左边界加1和n之间。(为什么是n?因为n可能本身就是某个质数的倍数,然后这次操作又选了该质数,则n不变)if (isPrime(j)){continue;//跟上面一样,不可能是质数。}List<Integer> temp = prime(j);//继续对上个数进行质因数分解int max = Collections.max(temp);//找出最大的质因数作为第一次操作选择的质数,这样能使起始数字(即a0)尽可能小minstart = Math.min(j-max+1,minstart);//更新维护最小数字}}if (minstart==Integer.MAX_VALUE){System.out.println("-1");}else {System.out.println(minstart);}}}//质数的判断private static boolean isPrime(int n){if (n<2)return false;if (n==2||n==3)return true;if (n%6!=1&&n%6!=5)return false;for (int i = 5; i*i<= n ; i+=6) {if (n%i==0||n%(i+2)==0){return false;}}return true;}//对n进行质因数分解private static List<Integer> prime(int n){List<Integer> ans  = new LinkedList<>();for(int i = 2; i <= n/i ; i++){//判断条件用n/i,以防i*i<=n发生溢出int a = 0;//每次循环都要清零while(n % i == 0){n /= i;a++;}if(a > 0)ans.add(i);}//若该数是质数,那么应该将自身(n)也加入if(n > 1) ans.add(n);return ans;}
}
http://www.hkea.cn/news/14346/

相关文章:

  • 网站制作培训班2022小说排行榜百度风云榜
  • wordpress 点击图片放大seow是什么意思
  • 网站建设需要会代码吗搜索引擎排名规则
  • 云南做网站报价产品推广渠道
  • 湖南网站制作电话互联网哪个行业前景好
  • 网站开发二线城市免费做网页的网站
  • wordpress 禁止保存seo网站自动发布外链工具
  • 网站模版的优化全国疫情最新报告
  • 企业网站开发报告网络营销的具体形式种类
  • 做网站找哪家好要钱吗自动搜索关键词软件
  • 沂水网站建设360搜索引擎
  • 60天做网站个人网站推广怎么做
  • wordpress文章接口网站关键词排名优化系统
  • 千山科技做网站好不好东莞网站seo公司哪家大
  • 关键词排名优化易下拉教程武汉seo优化排名公司
  • saas建站平台介绍目前最靠谱的推广平台
  • php做网站标题加链接网络营销的方式有哪些
  • 网页设计参考网站百度seo查询收录查询
  • 海口网上注册公司流程seo网站推广软件
  • wordpress引导页插件抖音搜索seo排名优化
  • 做分销微商城网站石家庄百度推广优化排名
  • jsp网站怎么做邮箱验证码seo关键词找29火星软件
  • 好看的网站色彩搭配免费建设网站平台
  • 有什么网站做图片宣传海报seo属于什么
  • 微信小程序格泰网站建设seo技术培训中心
  • 如何用nat123做网站网络公关公司
  • 团员注册网站做企业网站哪个平台好
  • 网站虚拟主机里的内容强制删除广州营销推广
  • 沈阳做网站软件营销团队
  • 18g网站空间跨境电商平台有哪些