关闭

算法提高 ADV-154 质数的后代

标签: java数据结构算法蓝桥杯
224人阅读 评论(0) 收藏 举报
分类:
问题描述
  在上一季里,曾提到过质数的孤独,其实从另一个角度看,无情隔膜它们的合数全是质数的后代,因为合数可以由质数相乘结合而得。
  如果一个合数由两个质数相乘而得,那么我们就叫它是质数们的直接后代。现在,给你一系列自然数,判断它们是否是质数的直接后代。
输入格式
  第一行一个正整数T,表示需要判断的自然数数量
  接下来T行,每行一个要判断的自然数
输出格式
  共T行,依次对于输入中给出的自然数,判断是否为质数的直接后代,是则输出Yes,否则输出No
样例输入
4
3
4
6
12
样例输出
No
Yes
Yes
No
数据规模和约定
  1<=T<=20
  2<=要判断的自然数<=105

import java.util.Scanner;

public class Main{
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int t = sc.nextInt();
		int [] num = new int[t];
		
		//找出其中最大的那个数
		int max = Integer.MIN_VALUE;
		for (int i = 0; i < num.length; i++) {
			num[i] = sc.nextInt();
			if(max<num[i]){
				max = num[i];
			}
		}
		
		//筛选素数
		boolean [] primes = new boolean[max+1];
		primes[0] = true;
		primes[1] = true;
		for (int i = 2; i < primes.length; i++) {
			if(!primes[i]){
				for (int j = i*2; j < primes.length; j=j+i) {
					primes[j] = true;
				}
			}
		}
		
		boolean flag = false;
		for(int i=0; i<num.length; i++){
			flag = false;
			for(int j=2; j<num[i]; j++){
				if(!primes[j] && num[i]%j==0 && !primes[num[i]/j]){
					System.out.println("Yes");
					j=num[i]-1;
					flag = true;
				}
			}
			if(flag == false){
				System.out.println("No");
			}		
		}
	}
}


  
0
0
查看评论

蓝桥 算法提高 质数的后代

算法提高 质数的后代 时间限制:1.0s 内存限制:256.0MB 问题描述   在上一季里,曾提到过质数的孤独,其实从另一个角度看,无情隔膜它们的合数全是质数的后代,因为合数可以由质数相乘结合而得。   如果一个合数由两个质数相乘而得,那么我们就叫它是质数们的直接后代。现在,给你一系...
  • ShiWaiGaoRen12345
  • ShiWaiGaoRen12345
  • 2016-03-05 19:59
  • 476

质数的后代

1227: 算法提高 质数的后代 时间限制: 1 Sec  内存限制: 256 MB 提交: 5  解决: 2 [提交][状态][讨论版] 题目描述 在上一季里,曾提到过质数的孤独,其实从另一个角度看,无情...
  • xunalove
  • xunalove
  • 2017-01-31 17:08
  • 1031

蓝桥杯 算法提高 质数的后代

算法提高 质数的后代   时间限制:1.0s   内存限制:256.0MB      问题描述   在上一季里,曾提到过质数的孤独,其实从另一个角度看,无情隔膜它们的合数全是质数的后代,因为合数可以由质数相乘...
  • weixin_40124642
  • weixin_40124642
  • 2017-11-05 19:56
  • 42

1736:质数的后代

1736:质数的后代 Description 算法提高  质数的后代    时间限制:1.0s     内存限制:256.0MB       问题描述   在上一季...
  • zhangao230
  • zhangao230
  • 2017-09-14 14:51
  • 86

蓝桥杯 - 质因数

从2开始遍历到此数-1,如果可以被整除,那么除到不能除为止,然后判定下一个,直到n==i或者遍历结束#include<stdio.h>int main () { int n; scanf("%d", &n); printf("...
  • xiao_bai_9527
  • xiao_bai_9527
  • 2018-01-17 18:49
  • 37

USACO 1.5 Superprime Rib 特殊的质数肋骨(模拟)

【USACO1.5.3】Superprime Rib 特殊的质数肋骨 Time Limit:10000MS  Memory Limit:65536K Total Submit:56 Accepted:44  Case Time Limit:1000MS Descripti...
  • wikioi_bai
  • wikioi_bai
  • 2015-02-17 16:41
  • 1237

算法提高 素数求和

问题描述   输入一个自然数n,求小于等于n的素数之和 样例输入 2 样例输出 2 数据规模和约定   测试样例保证 2 import java.math.BigInteger; import java.util.Scanner; public class ...
  • qq_29656961
  • qq_29656961
  • 2017-03-19 19:04
  • 416

算法提高 特殊的质数肋骨

试用平台 1207: 算法提高 特殊的质数肋骨 时间限制: 1 Sec  内存限制: 128 MB 提交: 9  解决: 2 [提交][状态][讨论版] 题目描述 农民约翰母牛总是产生最好的肋骨。你能...
  • xunalove
  • xunalove
  • 2017-02-21 20:25
  • 1000

后代选择器和子选择器

后代选择器 h1 em 选择器可以解释为 “作为 h1 元素后代的任何 em 元素 有关后代选择器有一个易被忽视的方面,即两个元素之间的层次间隔可以是无限的。 例如,如果写作 ul em,这个语法就会选择从 ul 元素继承的所有 em 元素,而不论 em 的嵌套层次多深。 .di...
  • qq_26222859
  • qq_26222859
  • 2016-04-15 15:58
  • 415

CSS的子选择器与后代选择器的区别

子选择器 还有一个比较有用的选择器子选择器,即大于符号(>),用于选择指定标签元素的第一代子元素。如右侧代码编辑器中的代码: .food>li{border:1px solid red;} 这行代码会使class名为food下的子元素li(水果、蔬菜)加入红色实线边框。
  • u012110719
  • u012110719
  • 2014-11-16 11:35
  • 20066
    个人资料
    • 访问:19911次
    • 积分:1685
    • 等级:
    • 排名:千里之外
    • 原创:156篇
    • 转载:1篇
    • 译文:0篇
    • 评论:0条