본문으로 바로가기

백준 소수찾기

category 프로그래밍 언어/알고리즘 2019. 2. 19. 21:45
시간 제한메모리 제한제출정답맞은 사람정답 비율
2 초128 MB2452211786986649.995%

문제

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

입력

첫 줄에 수의 개수 N이 주어진다. N은 100이하이다. 다음으로 N개의 수가 주어지는데 수는 1,000 이하의 자연수이다.

출력

주어진 수들 중 소수의 개수를 출력한다.

예제 입력 1 

4
1 3 5 7

예제 출력 1 

3





이 문제는 소수 찾기 문제로 제가 접근한 방식은 우선 2는 소수이기 때문에 2입력 햇을 때 먼저 count 수를 증가시키고


무한반복문인 while(1)로 감싼 후 안에 for문으로 2부터 배열 a의 값까지 돌립니다. 즉 배열의 값들을 2부터 배열 값 보다 하나 


작은 값을 나누어서 나눠지는게 하나라도 있으면 소수가 아니므로 이를 확인하기 위해 count2 변수를 두었습니다. 즉 마지막에 


count2 값과 for문이 돈 횟수 값이 같으면 배열의 값보다 작은 값들로 나누었을 때 나누어 떨어진 것이 없다는 뜻으로 소수입니다.

 

이것으로 판별했습니다.


먼저 소수를 다 구해놓고 찾는 방법도 있긴 하지만 제 방법대로 한번 풀어봤습니다.



'프로그래밍 언어 > 알고리즘' 카테고리의 다른 글

백준 일곱난쟁이  (0) 2019.02.19
백준 설탕배달  (0) 2019.02.17
백준 보물문제 풀이  (0) 2019.02.17
숫자 순환 알고리즘  (0) 2019.01.04
쉬운 농부 알고리즘  (2) 2018.09.24