알고리즘

[백준/Java]Q1978

  • -
반응형

백준 알고리즘 9단계 기본 수학2 1978번 문제입니다.


Q. 주어진 수 N개 중에서 소수가 몇 개인지 찾아서 출력하는 프로그램을 작성하시오.

[입력]
- 첫 줄에 수의 개수 N이 주어진다.
- 둘째 줄에 N개의 수가 주어진다.

 

[조건]
- N은 100이하이다.
- N개의 수는 1000이하의 자연수이다.

풀이

소수는 1보다 큰 자연수 중 1과 자기 자신만을 약수로 갖는 수를 말한다.

이 문제는 반복문을 돌려 자신 이외의 수로 떨어지는 경우를 체크하는 방식으로 풀 수 있었다.

 

소스
package com.baek.algo.step09;

import java.util.Scanner;

public class Q1978 {

	public static void main(String[] args) {		
		Scanner sc = new Scanner(System.in);

		int n = sc.nextInt();
		int cnt = 0;

		for(int i = 0; i < n; i++) {
			int num = sc.nextInt();

			if(num > 1) {
				boolean pNum = true;

				for(int j = 1; j <= num; j++) {
					if(j != 1 && j != num) {
						if(num % j == 0) {
							pNum = false;
							break;
						}
					}
				}

				if(pNum == true) {
					cnt = cnt + 1;
				}
			}
		}

		System.out.println(cnt);

		sc.close();
	}
}
반응형

'알고리즘' 카테고리의 다른 글

[백준/Java]Q11653  (0) 2021.07.21
[백준/Java]Q2581  (0) 2021.07.21
[백준/Java]Q10757  (0) 2021.07.17
[백준/Java]Q2775  (0) 2021.07.16
[백준/Java]Q2839  (0) 2021.07.16
Contents

포스팅 주소를 복사했습니다.

이 글이 도움이 되었다면 공감 부탁드립니다.