[ Baekjoon ] 4153번 ( Bronze III ) : 직각삼각형 (Java)

ma.caron_g·2022년 1월 18일
0
post-thumbnail

1. Problem 📃

[ 직각삼각형 ]

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


[ 문제 ]

과거 이집트인들은 각 변들의 길이가 3, 4, 5인 삼각형이 직각 삼각형인것을 알아냈다.
주어진 세변의 길이로 삼각형이 직각인지 아닌지 구분하시오.


2. Input 📇

[ 입력 ]

입력은 여러개의 테스트케이스로 주어지며 마지막줄에는 0 0 0이 입력된다.
각 테스트케이스는 모두 30,000보다 작은 양의 정수로 주어지며, 각 입력은 변의 길이를 의미한다.


3. Output 📠

[ 출력 ]

각 입력에 대해 직각 삼각형이 맞다면 "right", 아니라면 "wrong"을 출력한다.


4. Example 📚

[ 입출력 예시 ]

예제 입력예제 출력
6 8 10
25 52 60
5 12 13
0 0 0
right
wrong
right

5. Solution 🔑

처음에 변의 길이가 오름차순으로 입력되는건가 이해하지 못해서 일단 랜덤으로 값이 주어진다는 조건하에 문제를 풀었다
(솔직히 sort만 시키면 되는거라 그리 어렵진 않다)

  1. 세 변의 길이를 받을 배열 변수(dist)를 선언하였다.

  2. 세 값이 모두 0 0 0 이 입력될 때까지 무한 루프를 돌려 값을 받아준다.

  3. Math.pow(값, 제곱 수)를 이용하여 dist[0]과 dist[1]의 제곱 값의 합은 dist[2]의 제곱 수와 같은지 확인하여 같으면 "rigth"값을 그렇지 않다면 "wrong"값을 출력한다.

6. Code 💻

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;
import java.util.StringTokenizer;

public class Main {
	public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringTokenizer st = new StringTokenizer(br.readLine());
        
        int[] dist = new int[3];
        
        while(true) {
        	
	        dist[0] = Integer.parseInt(st.nextToken());
	        dist[1] = Integer.parseInt(st.nextToken());
	        dist[2] = Integer.parseInt(st.nextToken());
	        
        
	        if(dist[0] == 0 && dist[1] == 0 && dist[2] == 0) {
	        	break;
	        }

	        else if (dist[0] == 0 || dist[1] == 0 || dist[2] == 0) {
	        	System.out.println("wrong");
	        }
	        else {
	        	Arrays.sort(dist);
		        if( Math.pow(dist[0], 2) + Math.pow(dist[1], 2) == Math.pow(dist[2], 2)) {
		        	System.out.println("right");
		        }
		        else {
		        	System.out.println("wrong");
		        }
	        }
	        st = new StringTokenizer(br.readLine(), " ");
        }
	}
}

profile
다른 사람이 만든 것을 소비하는 활동보다, 내가 생산적인 활동을 하는 시간이 더 많도록 생활화 하자.

0개의 댓글