🔗 문제
https://school.programmers.co.kr/learn/courses/30/lessons/120836
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr

💻 Code
def solution(n):
cnt = 0
for i in range(1, int(n ** 0.5) + 1):
if n % i == 0:
cnt += 2
if i * i == n:
cnt -= 1
return cnt
1부터 n의 제곱근까지 for 루프를 돌려서 순서쌍의 개수를 찾는다.
if n % i == 0:i가n의 약수일 경우,cnt += 2:(i, n // i),(n // i, i)의 두 가지 경우가 나오므로cnt += 2를 해준다.- 이때
i * i == n, 즉i가n의 제곱근일 경우, 한 번만 카운트해야 하므로cnt -= 1를 해준다.

'Algorithm > 프로그래머스' 카테고리의 다른 글
| [Lv.0/Python] 배열의 평균값 (0) | 2023.07.27 |
|---|---|
| [Lv.0/Python] 주사위 게임1 (0) | 2023.07.26 |
| [Lv.0/Python] 콜라츠 수열 만들기 (0) | 2023.07.26 |
| [Lv.0/Python] 문자열 바꿔서 찾기 (0) | 2023.07.25 |
| [Lv.0/Python] 다음에 올 숫자 (0) | 2023.07.25 |
