반응형
Notice
Recent Posts
Recent Comments
Link
지구정복
[수학] 백준 - 직각삼각형 본문
728x90
반응형
https://www.acmicpc.net/problem/4153
-문제해설
피타고라스 정리가 성립하면 직각삼각형이다. 이때 주어지는 입력값들 중에서 가장 큰 값이 우변에 있어야 되고
나머지 두 개의 값들이 좌변에 있어야 한다.
x^2 + y^2 = z^2
따라서 입력값을 배열에 저장하고 그 배열을 오름차순으로 정렬해서 피타고라스 정리를 적용한다.
-자바
package math;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.Arrays;
import java.util.StringTokenizer;
public class BJ4153 {
private static BufferedWriter bw =
new BufferedWriter( new OutputStreamWriter(System.out));
private static int[] s;
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
while( true ) {
int[] s = new int[3];
StringTokenizer st = new StringTokenizer( br.readLine() );
s[0] = Integer.parseInt( st.nextToken() );
s[1] = Integer.parseInt( st.nextToken() );
s[2] = Integer.parseInt( st.nextToken() );
if( s[0]==0 ) break;
Arrays.sort( s );
if( s[0]*s[0] + s[1]*s[1] == s[2]*s[2] ) bw.write( "right\n" );
else bw.write( "wrong\n" );
bw.flush();
}
bw.close();
br.close();
}
}
-파이썬
while True:
s = list( map( int, input().split() ) )
if s[0] == 0: break
s.sort()
if( s[0]**2 + s[1]**2 == s[2]**2): print( "right" )
else: print( "wrong" )
728x90
반응형
'데이터 엔지니어링 정복 > Algorithm' 카테고리의 다른 글
[브루트포스] 백준 - 분해합 (0) | 2021.07.22 |
---|---|
[수학] 백준 - ACM호텔 (0) | 2021.07.22 |
[수학] 백준 - 직사각형에서 탈출 (0) | 2021.07.22 |
[브루트포스] 백준 - 체스판 다시 칠하기 (0) | 2021.07.22 |
[수학] 백준 - 레벨햄버거 (0) | 2021.07.21 |
Comments