Level 0. 순서쌍의 개수
n이 제곱근의 제곱인 경우를 처음에 더해준다.
1 ~ n까지 모두 순회할 필요 없이 제곱근보다 작은 수까지만 확인하고 한 번에 2씩 더해주면 된다.
#include <iostream>
#include <cmath>
using namespace std;
int solution(int n)
{
float square_root = sqrt(n);
int answer = (pow(square_root, 2) == n);
for (int i = 1; i < square_root; ++i)
answer += !(n % i) * 2;
return answer;
}
'자료구조 & 알고리즘 > 프로그래머스' 카테고리의 다른 글
Level 0. 합성수 찾기 (0) | 2023.02.01 |
---|---|
Level 0. 약수 구하기 (0) | 2023.01.31 |
Level 0. 삼각형의 완성조건 (2) (0) | 2023.01.29 |
Level 0. OX퀴즈 (0) | 2023.01.28 |
Level 0. 안전지대 (0) | 2023.01.27 |