본문 바로가기

Certificate/Cos Pro 1급 (Python)

[Cos Pro 1급] 기출문제 4회차, 소수의 세제곱이 몇 개가 있나요

Hi, There!
안녕하세요, 바오밥입니다.


목차

  1. 문제
  2. 풀이

문제

문제 내용

자연수를 제곱한 수는 제곱수, 세 제곱한 수는 세제곱 수라고 합니다.

예를 들어 2^2 = 4 는 제곱수, 3^3 = 27은 세제곱수 입니다.

 

두 자연수 a, b가 주어질 때 a 이상 b 이하인 자연수 중 _소수_의 제곱수와 세제곱수의 개수를 구하려 합니다.

예를 들어 a = 6, b = 30일 때 소수의 제곱수는 [9, 25]로 2개, 소수의 세제곱수는 [8, 27]로 2개로 총 4개입니다.

두 자연수 a, b가 매개변수로 주어질 때, a 이상 b 이하인 제곱수와 세제곱수의 개수의 합을 return 하도록 solution 함수를 완성해주세요.

 

매개변수 설명

두 자연수 a, b가 solution 함수의 매개변수로 주어집니다.

  • a, b는 각각 1 이상 1,000,000,000 이하인 자연수입니다.
  • a ≤ b인 경우만 입력으로 주어집니다.

 

return 값 설명

a 이상 b 이하인 제곱수와 세제곱수의 개수의 합을 return 해주세요.

 

예시

 

예시 설명

6 이상 30 이하인 수중 소수의 제곱수는 다음과 같습니다.

  • 3^2 = 9
  • 5^2 = 25

 

소수의 세제곱 수는 다음과 같습니다.

  • 2^3 = 8
  • 3^3 = 27

 

따라서 4를 return 하면 됩니다.


풀이

풀이 코드 및 해설

def getPrime(b):
	# 재풀이 필요

def solution(a, b):
	# 재풀이 필요
	return answer