#include <string>
#include <vector>
#include <cmath>
using namespace std;
int solution(int n) {
bool *arr = new bool[n + 1];
int answer = 0;
for (int i = 0; i < n + 1; i++)
arr[i] = true;
for (int i = 2; i <= sqrt(n); i++)
{
if (!arr[i])
continue;
for (int j = i * i; j <= n; j += i)
arr[j] = false;
}
for (int i = 2; i < n + 1; i++)
if (arr[i])
answer++;
return answer;
}
'코딩테스트 > 프로그래머스' 카테고리의 다른 글
[Level 1][C++] 문자열 다루기 기본 (0) | 2024.10.10 |
---|---|
[Level 1][C++] 자연수 뒤집어 배열로 만들기 (0) | 2024.10.10 |
[Level 1][C++] 소수의 합 (1) | 2024.10.10 |
[Level 2][C++] 기능개발 (2) | 2024.10.10 |
[Level 2][C++] 올바른 괄호 (0) | 2024.10.10 |