소수 찾기 성공
시간 제한 | 메모리 제한 | 제출 | 정답 | 맞은 사람 | 정답 비율 |
---|---|---|---|---|---|
2 초 | 128 MB | 24522 | 11786 | 9866 | 49.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 |
쉬운 농부 알고리즘 (3) | 2018.09.24 |