완전 제곱수 - 1977
Category: Baekjoon
Tags: bruteforce algorithm
주어진 $M, N$ 사이에 있는 수 중에서 완전 제곱수를 찾는 문제 (합, 최솟값)
맞았습니다! 풀이
1부터 N까지 돌면서 완전제곱수를 찾는 방식으로 풀었다.
M = int(input())
N = int(input())
min, res = N + 1, []
for n in range(1, N + 1):
sqrd = n * n
if sqrd >= M and sqrd <= N:
res.append(sqrd)
if min > sqrd: # 최소 완전제곱수 구하기
min = sqrd
res_sum = sum(res)
if res_sum != 0:
print(res_sum)
if min == N+1: # 완전제곱수가 존재하지 않는 경우
print(-1)
else:
print(min)