본문 바로가기

Algorithm/CodeUp

[CodeUp_Java] Q1218 : 삼각형 판단하기

반응형

안녕하세요! Plitche(플리체)입니다.
이번 포스팅의 주제는 Q1218 : 삼각형 판단하기 (자바, JAVA)입니다.

Intro

Question

문제 설명

입력

변의 길이 a, b, c가 입력된다. (정수)

출력

조건에 따라 삼각형을 출력한다.


조건)
세 변의 길이가 같은 경우 : 정삼각형
두 변의 길이가 같은 경우 : 이등변삼각형
a2 + b2 = c2일 경우(피타고라스 정리) : 직각삼각형
위의 조건에 맞지 않는 일반 삼각형일 경우 : 삼각형
삼각형이 아닐 경우 : 삼각형아님
을 출력한다.

예시

  • 입력 : 3 3 3
  • 출력 : 정삼각형

Solution (풀이)

  • 풀이 : 메모리 11180, 시간 62
public class Answer1 {
    public static void main(String[] args) throws IOException {
    BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
    StringBuilder sb = new StringBuilder();
        StringTokenizer st = new StringTokenizer(br.readLine(), " ");

        int a = Integer.parseInt(st.nextToken());
        int b = Integer.parseInt(st.nextToken());
        int c = Integer.parseInt(st.nextToken());

        if (a+b <= c) {
            sb.append("삼각형아님"); // 가장 긴 변의 길이가 나머지 둘보다 작으면 삼각형이 아니다.
        } else {
            if (a==b && b==c) { // 모든 변의 길이가 같으면 정삼각형
               sb.append("정삼각형");
            } else if ( (a==b && b!=c) || (b==c && c!=a) || (a==c && a!=b) ) { // 두변의 길이가 같고, 나머지 한변이랑 일치하지 않으면 이등변 삼각형
                sb.append("이등변삼각형");
            } else if ( a*a + b*b == c*c ) {
                sb.append("직각삼각형"); // 각 변의 제곱의 합이 같을때
            } else {
                sb.append("삼각형"); // 이외
            }
        }

        System.out.println(sb);
        br.close();
    }
}

Ranking(순위)

반응형