🔥Baekjoon start🔥

ariel·2021년 11월 18일
0

Baekjoon

목록 보기
11/14
post-thumbnail

2021-11-18

✍쪠와 함께 하루에 30분 이상 시작✨

1978

import java.util.Scanner;

public class Main {	
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		
		int T = sc.nextInt();
		
		int count = 0;
		
		for(int i = 0; i<T; i++) {
			//소수인 경우 true, 아닌 경우 false
			boolean ip = true;
			
			int N = sc.nextInt();
			
			if(N == 1) { //1 인 경우 다음 반복문으로
				continue;

			}
			for(int j =2; j<=Math.sqrt(N); j++) {
				if(N %j ==0) {
					ip = false; //소수가 아니므로 false로 바꿔줌
					break;
				}
			}
			if(ip) { //소수인경우 count 값 1 증가
				count++;
				
			}
		}
		System.out.println(count);
	}
}

import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int number = sc.nextInt();
		int count=0;
		for (int i = 0; i < number; i++) {
			int a= sc.nextInt();
			int tmp = 0;
			
			for (int j = 1; j < a; j++) {
				
				if (a%j==0) {
					tmp++;
				}
			}
				if (tmp==1) {
					count++;
				}
		}
		System.out.println(count);
	}

}

2581

import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner scan = new Scanner(System.in);
		
		int M = scan.nextInt();
		int N = scan.nextInt();
		scan.close();
		
		int sum = 0;
		int min = N;
		int cnt = 0;
		for(int i = M; i <= N; i++) {
			cnt = 0;
			for(int j = 1; j <= i; j++) {
				if(i % j == 0) cnt++;
			}
			if(cnt == 2) {
				sum += i;
				if(i < min) min = i;
			}
		}
		
		if(sum == 0) {
			System.out.println(-1);
		} else {
			System.out.println(sum);
			System.out.println(min);
		}
	}
}

import java.util.Scanner;
public class Main {
	 
	public static boolean prime[];
	
	public static void main(String[] args) {
 
		Scanner in = new Scanner(System.in);
		
		int M = in.nextInt();
		int N = in.nextInt();
		
		prime = new boolean[N + 1];	// 배열 생성 
		get_prime();
		
		
		// 소수 합 및 최솟값 
		int sum = 0;
		int min = Integer.MAX_VALUE;
		for(int i = M; i <= N; i++) {
			if(prime[i] == false) {	// false = 소수 
				sum += i;
				if(min == Integer.MAX_VALUE) {	// 첫 소수가 최솟값임  
					min = i;
				}
			}
		}
		
		if(sum == 0) {	// 소수가 없다면 
			System.out.println(-1);
		}
		else {
			System.out.println(sum);
			System.out.println(min);
		}
		
	}
 
	
	// 에라토스테네스 체 알고리즘 
	public static void get_prime() {
		prime[0] = true;
		prime[1] = true;
		
		for(int i = 2; i <= Math.sqrt(prime.length); i++) {
			for(int j = i * i; j < prime.length; j += i) {
				prime[j] = true;
			}
		}
	}
}

11653

import java.util.Scanner;
public class Main {
	 	
	public static void main(String[] args) {
 
		Scanner in = new Scanner(System.in);
		
		int N = in.nextInt();
		
		 int i = 2;
	        while(N!=1){
	            if(N%i==0){
	                N/=i;
	                System.out.println(i);
	            }else{
	                i++;
	            }
	        }
	}
}

import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner in = new Scanner(System.in);
        
		int N = in.nextInt();
 
		for (int i = 2; i <= Math.sqrt(N); i++) {	// 또는 i * i <= N
			while (N % i == 0) {
				System.out.println(i);
				N /= i;
			}
		}
		if (N != 1) {
			System.out.println(N);
		}
	}
}

1929

import java.util.Scanner;
public class Main {
	 
	public static boolean prime[]; //소수를 체크할 배열
	
	public static void main(String[] args) {
 
		Scanner in = new Scanner(System.in);
		
		int M = in.nextInt();
		int N = in.nextInt();
		
		prime = new boolean[N + 1];	// 배열 생성 
		get_prime();
		
		
		for(int i = M; i<=N; i++) {
			if(!prime[i]) System.out.println(i);
		}
	}
 
	
	// 에라토스테네스 체 알고리즘 
	public static void get_prime() {
		//true = 소수아님, false = 소수
		prime[0] = prime[1] = true;
		
		// 제곱근 함수 : Math.sqrt()
		for(int i = 2; i <= Math.sqrt(prime.length); i++) {
			if(prime[i]) continue;
			
			// i의 배수들을 걸러부기 위한 반복문
			for(int j = i * i; j < prime.length; j += i) {
				prime[j] = true;
			}
		}
		
	}
}

0개의 댓글