본문 바로가기

Algorithm/Implementation

(C++) - 백준(BOJ) 1977번 : 완전제곱수

반응형

https://www.acmicpc.net/problem/1977

 

1977번: 완전제곱수

M과 N이 주어질 때 M이상 N이하의 자연수 중 완전제곱수인 것을 모두 골라 그 합을 구하고 그 중 최솟값을 찾는 프로그램을 작성하시오. 예를 들어 M=60, N=100인 경우 60이상 100이하의 자연수 중 완

www.acmicpc.net

그대로 구현하는 문제였습니다.

 

 

 

📕 Code

#include <iostream>
using namespace std;
int main() {
    int small = 10001, M,N, sum = 0, cnt=0;
    cin >> M >> N;
        for (int j = 1; j <= 100; j++)
        {
            if(j*j >= M&&j*j <= N)
            {
                sum += j*j;
                cnt++;
            }
            if (j*j >= M&&j*j <= N&&small > j*j)
            {
                small = j*j;
                
            }
        }
        if (cnt == 0)
        {
            cout << "-1";
            return 0;
        }
    cout << sum << '\n' << small;
}