BOJ: 6131 완전 제곱수

최대 1 분 소요

문제

상근이는 선영이와 함께 게임을 하고 있다. 먼저, 상근이는 두 양의 정수 \(A\)와 \(B\)를 고른다. \((1 \leq B \leq A \leq 500)\) 그 다음, 선영이는 상근이가 고른 수를 맞춰야 한다.

상근이는 선영이에게 다음과 같은 힌트를 주었다.

\(A\)의 제곱은 \(B\)의 제곱보다 \(N\)만큼 커 \((1 \leq N \leq 1,000)\)

위의 힌트 조건을 만족하는 \(A\)와 \(B\) 쌍의 개수를 구하는 프로그램을 작성하시오.

입력

첫째 줄에 \(N\)이 주어진다.

출력

상근이의 힌트 조건을 만족하는 \((A,B)\) 쌍의 개수를 출력한다.

예제 입력 1

15

예제 출력 1

2


코드

#include <bits/stdc++.h>

using namespace std;

int main(void) {
    int n;
    int count = 0;

    cin>>n;

    for(int a=1; a<=500; a++)
        for(int b=1; b<=500; b++)
            if((a*a) == (b*b+n))
                count++;

    cout<<count;

    return 0;
}

Reference

BOJ

태그:

카테고리:

업데이트:

댓글남기기