본문 바로가기
Algorithm

[수학/브루트포스] 백준 6131 완전 제곱수 - 파이썬(Python)

by jangThang 2022. 12. 6.
반응형

백준 온라인 저지

 

[ Contents ]

     

     

    1. 문제 (링크 참조)

     

    6131번: 완전 제곱수

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

    www.acmicpc.net

     

     

     

    2. 문제 풀이

    A^2 = B^2 + N

     위 조건을 만족하는 A와 B 쌍의 개수를 구하는 문제입니다.

     

    2022.01.16 - [Algorithm] - [Algorithm] 브루트 포스(Brute Force)는 노가다 기법?

     

    [Algorithm] 브루트 포스(Brute Force)는 노가다 기법?

    [ Contents ] 1. 브루트 포스란?  Brute(짐승 같은, 난폭한) + Force(힘, 폭력)의 합성어입니다. 무식하게 푸는 기법으로, '노가다'에 가까운 접근법입니다. 모든 경우의 수를 시험해보며 문제를 해결합니

    star7sss.tistory.com

     A 와 B는 양수이며, 단순히 수식을 계산해서 A와 B를 도출하기는 어렵습니다. 그보다는 브루트포스 방식으로, A와 B의 쌍의 개수를 파악합니다.

     

     

    3. 코드

    n = int(input())
    
    count = 0
    for i in range(1, 500):
        a = (i**2 + n)**0.5
        if a%1 == 0:
            count += 1
    print(count)

     A와 B는 1부터 500까지 될 수 있으며, 위 식을 만족하는 쌍의 개수를 셉니다.

     

     

    star가 되고나서 Tistory

    반응형

    댓글