본문 바로가기

숨막히는 알고말고/문제 풀이

[Baekjoon] 직각삼각형

👀 문제 설명

문제

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

 

입력

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

 

출력

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

 

예제 입력 1

6 8 10

25 52 60

5 12 13

0 0 0

 

예제 출력 1

right

wrong

right

 

✍🏻풀이

x, y, z를 입력받고, 한 변의 제곱이 다른 두 변의 제곱의 합과 같다면 right을 출력, 아니라면 wrong을 출력한다.

 

코드

package boj;

// 직각삼각형 (https://www.acmicpc.net/problem/4153 )

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

public class BOJ_4153 {

	public static void main(String[] args) throws IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
		StringTokenizer st;
		
		while (true) {
			st = new StringTokenizer(br.readLine());
			
			int x = Integer.parseInt(st.nextToken());
			int y = Integer.parseInt(st.nextToken());
			int z = Integer.parseInt(st.nextToken());
			
			if (x == 0 && y == 0 && z == 0) break;
			
			
			if (((x * x + y * y) == z * z) || ((y * y + z * z) == x * x) || ((z * z + x * x) == y * y)) {
				bw.write("right\n");
			}
			else {
				bw.write("wrong\n");
			}
		}

		bw.flush();
		bw.close();
	}

}

'숨막히는 알고말고 > 문제 풀이' 카테고리의 다른 글

[Baekjoon] 나이순 정렬  (0) 2021.08.16
[Baekjoon] 괄호  (0) 2021.08.16
[Baekjoon] 블랙잭  (0) 2021.08.16
[Baekjoon] 수 정렬하기 2  (0) 2021.08.16
[Baekjoon] 최대공약수와 최소공배수  (0) 2021.08.16