๐ŸŒท๐ŸŒผ๋ชจ์—ฌ๋ด์š” ๊ฐœ๋ฐœ์˜์ˆฒ๐ŸŒท๐ŸŒผ

[JAVA/์ฝ”๋”ฉํ…Œ์ŠคํŠธ] ๋’ค์ง‘์€ ์†Œ์ˆ˜ ๋ณธ๋ฌธ

๊ฐœ๋ฐœ/์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œํ’€์ด JAVA

[JAVA/์ฝ”๋”ฉํ…Œ์ŠคํŠธ] ๋’ค์ง‘์€ ์†Œ์ˆ˜

์š”์ผ์ด 2021. 4. 25. 19:18
๋ฐ˜์‘ํ˜•

๋ฌธ์ œ

1. StringBuilder๋ฅผ ์‚ฌ์šฉ

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

public class Main {
	
	public void solution(int num, String[] integer) {
		
		for(String x : integer) {
			String str = new StringBuilder(x).reverse().toString();

			// ๋’ค์ง‘์–ด์ง„ ์†Œ์ˆ˜
			int result = Integer.parseInt(str);
			
			// ์†Œ์ˆ˜์ธ์ง€ ํŒ๋ณ„ 
			boolean isPrime = true;
			 
			// 1์€ ์†Œ์ˆ˜๊ฐ€ ์•„๋‹˜
			if(result != 1) {
				// 2๋ถ€ํ„ฐ i/2๊นŒ์ง€ ๋‚˜๋ˆด์„๋•Œ ๋‚˜๋ˆ„์–ด์ง€๋Š” ์ˆซ์ž๊ฐ€ ์กด์žฌํ•˜์ง€ ์•Š์œผ๋ฉด ์†Œ์ˆ˜์ด๋‹ค. 
				for(int j=2; j*j<=result; j++) { 
					// ๊ณ„์† ๋‚˜๋ˆ ์„œ ๋‚˜๋ˆ ์งˆ๋•Œ ์†Œ์ˆ˜๊ฐ€ ์•„๋‹ˆ๋‹ค. 
					if(result % j == 0) { 
						// ์†Œ์ˆ˜๊ฐ€ ์•„๋‹˜. 
						isPrime = false; 
						break; 
					}
				}
			
				// ์†Œ์ˆ˜์ด๋ฉด 
				if(isPrime) { 
					System.out.print(result + " "); 
				}
			}
			
		}
		
	}

	public static void main(String args[]) {
        Main main = new Main();
		Scanner in= new Scanner(System.in);
        int num = in.nextInt();
        String[] array = new String[num];
        for(int i=0; i<num; i++) {
        	array[i] = in.next();
        }
    	main.solution(num, array);
    }

}

2. int์—์„œ 10์˜์ž๋ฆฌ ์˜ฎ๊ธฐ๊ธฐ

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

public class Main {
	
	public boolean isPrime(int num) {
		if(num == 1) {
			return false;
		}else {
			for(int i=2; i<num; i++) {
				if(num%i == 0) {
					return false;
				}
			}
			return true;
		}
	}
	
	
	public ArrayList<Integer> solution(int n, int[] arr) {
		
		ArrayList<Integer> answer = new ArrayList<>();
		
		for(int i=0; i<n; i++) {
			int tmp = arr[i];
			int res = 0;
			// ์ˆซ์ž ๋’ค์ง‘๊ธฐ
			while(tmp>0) {
				int t = tmp%10;
				res = res*10+t;
				tmp = tmp/10;
			}
			//  ์†Œ์ˆ˜์ด๋ฉด ๊ฒฐ๊ณผ๊ฐ’์˜ ๋ฐฐ์—ด๋ฆฌ์ŠคํŠธ์— ์ถ”๊ฐ€
			if(isPrime(res)) {
				answer.add(res);
			}
		}
		
		
		return answer;
	}

	public static void main(String args[]) {
        Main main = new Main();
		Scanner in= new Scanner(System.in);
        int num = in.nextInt();
        int[] array = new int[num];
        for(int i=0; i<num; i++) {
        	array[i] = in.nextInt();
        }
        for(int x : main.solution(num, array)) {
        	System.out.print(x + " ");
        }
    }

}
Comments