Algorithm/COS
[COS Pro 1급, Python] 4차 10번 : 소수의 세제곱이 몇개가 있나요
JMcunst
2022. 2. 25. 13:22
728x90
반응형
문제 유형
코딩
난이도
normal
Note
1. 3차 6번의 소수 리스트를 뽑는 함수를 사용. (그래서 중요하다고...하였다.)
2. 제곱도는 for문과 세제곱도는 for문.
Code
# -*- coding: utf-8 -*-
# UTF-8 encoding when using korean
def get_prime(n): # very very special
primes = [2]
for i in range (3, n + 1, 2) :
is_prime = True
for j in range(2, i) :
if i % j == 0 :
is_prime = False
break
if is_prime :
primes.append(i)
return primes
def solution(a, b):
answer = 0
primes = get_prime(b)
#제곱
for i in primes:
now = pow(i, 2)
if a < now < b:
answer += 1
#세제곱
for i in primes:
now = pow(i, 3)
if a < now < b:
answer += 1
return answer
a = 6
b = 30
ret = solution(a, b)
print("solution 함수의 반환 값은", ret, "입니다.")
※ 가끔 코드 중 print(~)가 있습니다. 정리 못한 점 죄송합니다.
728x90
반응형