1977번: 완전제곱수
M과 N이 주어질 때 M이상 N이하의 자연수 중 완전제곱수인 것을 모두 골라 그 합을 구하고 그 중 최솟값을 찾는 프로그램을 작성하시오. 예를 들어 M=60, N=100인 경우 60이상 100이하의 자연수 중 완
www.acmicpc.net
>>
a를 1부터 1씩 증가시키며 완전제곱수를 만들어 범위에 해당하는 수는 리스트에 저장한다.
리스트의 길이가 0 이면 범위에 해당하는 제곱수가 없는 것으로 -1을 출력하고
있는 경우, 리스트의 총합과 최솟값을 출력한다.
M=int(input())
N=int(input())
num=[]
a=1
while True:
if a**2>=M and a**2<=N:
num.append(a**2)
elif a ** 2 > N:
break
a += 1
if len(num)==0:
print('-1')
else:
print(sum(num))
print(min(num))
반응형
'Python > Beakjoon' 카테고리의 다른 글
1978번 : 소수 찾기 (0) | 2021.08.23 |
---|---|
2501번: 약수 구하기 (0) | 2021.08.23 |
5086번: 배수와 약수 (0) | 2021.08.22 |
1748번:수 이어 쓰기 1 (0) | 2021.08.22 |
2903번:중앙 이동 알고리즘 (0) | 2021.08.22 |