https://school.programmers.co.kr/learn/courses/30/lessons/120846
1과 자기 자신을 제외하고 약수가 하나라도 있으면 조건을 만족한다. i의 시작을 4로해도 될듯
#include <string>
#include <vector>
using namespace std;
int solution(int n) {
int answer = 0;
for(int i = 1; i <= n; i++)
{
for(int j = 2; j < i; j++)
{
if(i % j == 0 && i > 3)
{
answer++;
break;
}
}
}
return answer;
}
#include <string>
#include <vector>
using namespace std;
bool isComposite(int n)
{
int cnt = 0;
for(int i = 1; i<=n; i++)
{
if(n % i == 0)
cnt++;
if(cnt >= 3)
return true;
}
return false;
}
int solution(int n) {
int answer = 0;
for(int i = 4; i<=n; i++)
{
if(isComposite(i))
answer++;
}
return answer;
}
수를 체크하는 부분을 함수화하여 꺼내놓았다.