728x90
🔗 문제 링크
📂 분류
구현
수학
💡 풀이
이 문제는 설명을 잘 보고 풀어야 하는 문제이다.
설명을 보면 10,000,000번까지 규칙을 적용했다고 나와있다. 따라서 천만이 넘는 번호라면 1번 블록을 설치해야 한다.
접근 방식
- 해당 숫자에 가장 큰 약수를 넣어준다.
- 만약 소수라면 1을 넣어준다.
💻 코드
def solution(begin, end):
MAX = 10000001
answer = []
for i in range(begin, end + 1):
num = 0 if i == 1 else 1
for j in range(2, int(i ** 0.5) + 1):
if i % j == 0 and i // j < MAX:
num = i // j
break
answer.append(num)
return answer
728x90
'Algorithm > 프로그래머스' 카테고리의 다른 글
[Python] 프로그래머스 Lv2 - 줄 서는 방법 (0) | 2022.07.02 |
---|---|
[Python] 프로그래머스 Lv2 - 숫자의 표현 (0) | 2022.06.20 |
[Python] 프로그래머스 Lv2 - k진수에서 소수 개수 구하기 (2022 KAKAO BLIND RECRUITMENT) (0) | 2022.06.19 |
[Python] 프로그래머스 Lv2 - 멀리 뛰기 (0) | 2022.06.18 |
[Python] 프로그래머스 Lv2 - 땅따먹기 (0) | 2022.06.18 |