Jakorithm
article thumbnail
728x90

문제

https://www.codetree.ai/training-field/search/problems/prime-composition?&utm_source=clipboard&utm_medium=text

 

코드트리 | 코딩테스트 준비를 위한 알고리즘 정석

국가대표가 만든 코딩 공부의 가이드북 코딩 왕초보부터 꿈의 직장 코테 합격까지, 국가대표가 엄선한 커리큘럼으로 준비해보세요.

www.codetree.ai

 

 

숫자 하나가 주어집니다.

  • 숫자가 1이면 "one"
  • 숫자가 소수이면 "prime"
  • 숫자가 합성수이면 "composition"

을 출력하는 프로그램을 작성해 보세요. (따옴표는 출력하지 마세요)

 

입력 예시

1

 

출력 예시

one

 

 

코드

첫 번째 줄에 정수 n이 주어진다.

  • 1 <= n <= 2^31 - 1
  • 소수 : 1 또는 자기 자신으로만 나누어 떨어지는 수
  • 합성수 : 1보다 큰 자연수 중 소수가 아닌 자연수
import java.io.*;

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
        int n = Integer.parseInt(br.readLine());

        if (n == 1) {
            bw.write("one");
        } else if (isPrime(n)) {
            bw.write("prime");
        } else {
            bw.write("composition");
        }

        bw.flush();
    }

    private static boolean isPrime(int n) {
        if (n < 2) {
            return false;
        }

        for (int i = 2; i < Math.sqrt(n); i++) {
            if (n % i == 0) {
                return false;
            }
        }

        return true;
    }
}

 

728x90