🌷🌼λͺ¨μ—¬λ΄μš” 개발의숲🌷🌼

[JAVA/μ½”λ”©ν…ŒμŠ€νŠΈ] μ†Œμˆ˜ κ΅¬ν•˜κΈ° λ³Έλ¬Έ

개발/μ•Œκ³ λ¦¬μ¦˜ λ¬Έμ œν’€μ΄ JAVA

[JAVA/μ½”λ”©ν…ŒμŠ€νŠΈ] μ†Œμˆ˜ κ΅¬ν•˜κΈ°

μš”μΌμ΄ 2021. 4. 25. 18:39
λ°˜μ‘ν˜•

문제

1. μ†Œμˆ˜κ΅¬ν•˜κΈ°

import java.util.*;
import java.io.*;

public class Main {
	
	public void solution(int num) {
		// μ†Œμˆ˜μ˜ 개수
		int count = 0;
		// 2λΆ€ν„° μž…λ ₯받은 μˆ«μžκΉŒμ§€
		for(int i=2; i<=num; i++) {
			// μ†Œμˆ˜μ΄λ©΄ true
			boolean isPrime = true;
			// 2λΆ€ν„° i/2κΉŒμ§€ λ‚˜λˆ΄μ„λ•Œ λ‚˜λˆ„μ–΄μ§€λŠ” μˆ«μžκ°€ μ‘΄μž¬ν•˜μ§€ μ•ŠμœΌλ©΄ μ†Œμˆ˜μ΄λ‹€.
			for(int j=2; j*j<=i; j++) {
				// 계속 λ‚˜λˆ μ„œ λ‚˜λˆ μ§ˆλ•Œ μ†Œμˆ˜κ°€ μ•„λ‹ˆλ‹€.
				if(i % j == 0) {
					// μ†Œμˆ˜κ°€ μ•„λ‹˜.
					isPrime = false;
					break;
				}
				
			}
			// μ†Œμˆ˜μ΄λ©΄
			if(isPrime) {
				count ++;
			}
		}
		
		System.out.print(count);

	}

	public static void main(String args[]) {
        Main main = new Main();
		Scanner in= new Scanner(System.in);
        int num = in.nextInt();
		main.solution(num); 
	}

}

2. μ—λΌν† μŠ€ν…Œλ„€μŠ€ 체

import java.util.*;
import java.io.*;

public class Main {
	
	public int solution(int num) {
		// μ†Œμˆ˜μ˜ 개수
		int count = 0;
		
		int[] ch = new int[num+1];
		for(int i=2; i<=num; i++) {
			if(ch[i]==0) {
				count ++;
				for(int j=i; j<=num; j=j+i) {
					ch[j] = 1;
				}
			}
		}
		
		return count;

	}

	public static void main(String args[]) {
        Main main = new Main();
		Scanner in= new Scanner(System.in);
        int num = in.nextInt();
		System.out.println(main.solution(num)); 
	}

}
Comments