반응형

@notepad_jj2

츄르사려고 코딩하는 코집사입니다.


1. [백준 알고리즘] 백준 6131번 완전 제곱수 자바(JAVA)

1) 문제번호 : 6131

 

2) 문제 출처

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

 

6131번: 완전 제곱수

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

www.acmicpc.net

 

2. 문제

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

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

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

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

 

3. 제약사항

 

4. 입력

첫째 줄에 N이 주어진다.

 

5. 출력

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

 

6. 풀이

- 1부터 501까지 반복하여 i 제곱을 A, j 제곱을 B로 두어 A가 B + N 과 같다면, cnt를 증가시켜 cnt를 출력시키면 된다.

 

7. 소스 코드

import java.io.*;
import java.util.StringTokenizer;

public class Main {
	public static void main(String[] args) throws NumberFormatException, IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		
		int N = Integer.parseInt(br.readLine());
		
		int cnt = 0;
		
		for(int i = 1; i < 501; i++) {
			double A = Math.pow(i, 2);
			for(int j = 1; j < 501; j++) {
				double B = Math.pow(j, 2);
				
				if(A == B + N) cnt++;
			}
		}
		
		System.out.println(cnt);
	}

}

 

반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기