반응형
LinkedIn 개발자로 성장하면서 남긴 발자취들을 확인하실 수 있습니다.
Github WWDC Student Challenge 및 Cherish, Tiramisul 등 개발한 앱들의 코드를 확인하실 수 있습니다.
개인 앱 : Cherish 내 마음을 들여다보는 시간, 체리시는 디자이너와 PM과 함께 진행 중인 1인 개발 프로젝트입니다.
10년 후, 20년 후 나는 어떤 스토리 텔러가 되어 있을지 궁금하다. 내가 만약에 아직 조금 더 탐구하고 싶은 게 있고, 궁금한 게 있다면, 그게 설사 지금 당장의 내 인생에 도움이 안 되는 것 같더라도 경험해보자. 그 경험들을 온전히 즐기며 내 것으로 만들고, 내 일에 녹여내고... 그러다보면 그 점들이 모여 나란 사람을 그려내는 선이 될 테니까.

Recent Posts
Recent Comments
Total
관리 메뉴

꿈꾸는리버리

[백준 알고리즘] 4153 직각삼각형 본문

오뚝이 개발자/알고리즘

[백준 알고리즘] 4153 직각삼각형

rriver2 2021. 12. 2. 09:11
반응형

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

 

4153번: 직각삼각형

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

www.acmicpc.net

 

풀이방법:    

 

1. 세 변의 길이 중 가장 큰 수(max) 찾기 -> 나머지는 mid에 넣었다.

2. 피타고라스 max^2 == mid1^2 +  mid2^2 일 경우 right 출력

 

#include <math.h>

pow(max,2)

-> max *max라고도 할 수 있지만, 헤더 파일을 인스톨해서 c++ 수학 연산자를 사용해서 계산하였다.

 

작성한 코드는 다음과 같다.

#include <iostream>
#include <math.h>
using namespace std;

int main() {
    
    while(1){
        int a,b,c;
        cin >> a >> b >> c;
        if(a==0 && b==0 && c==0) break;
        // 1. a,b,c 중 가장 큰 수 찾기
        int max;
        int mid[2];
        if(a >= b){
            max = a;
            mid[0] = b;
        }else{
            max = b;
            mid[0] = a;
        }
        if(c >= max){
            mid[1] = max;
            max = c;
        }else{
            mid[1] = c;
        }
        // 2. 피타고라스
        if(pow(max,2) == pow(mid[0],2) + pow(mid[1],2)){
            cout << "right\n";
        }else{
            cout << "wrong\n";
        }
    }
    return 0;
}

성공한 사진!    

반응형
Comments