코딩로그
[백준/BOJ/C++] 7510번 고급 수학 본문
[문제]
준규는 집을 짓고 있다. 준규는 모든 벽 모양을 직각 삼각형으로 만들려고 한다. 적절히 나무를 잘라 삼각형을 만들었지만, 준규는 각도를 측정할 수 있는 도구를 가지고 있지 않다. 어쩔 수 없이 줄자를 이용해 삼각형 세 변의 길이를 측정한 다음, 직각 삼각형인지 아닌지를 알아보려고 한다.
삼각형 세 변의 길이가 주어졌을 때, 직각 삼각형인지 아닌지를 구하는 프로그램을 작성하시오.
[입력]
입력의 첫째 줄에는 테스트 케이스의 개수 n이 주어진다. 각 테스트 케이스는 세 정수 1 ≤ a, b, c ≤ 40000 으로 이루어져 있다. 세 정수는 삼각형 각 변의 길이를 나타낸다.
[출력]
각 테스트 케이스마다 "Scenario #i:"를 출력한다. i는 테스트 케이스 번호이며, 1부터 시작한다. 그 다음 줄에는 입력으로 주어진 삼각형이 직각 삼각형인 경우에는 "yes", 아닌 경우에는 "no"를 출력한다. 각 테스트 케이스 사이에는 빈 줄을 하나 출력한다.
[Source Code]
#include <stdio.h>
#include <iostream>
#include <vector>
#include <string>
#include <algorithm>
#include <cmath>
using namespace std;
int main() {
int test;
cin >> test;
int *scenario = new int[test];
double abc[3] = {0};
for(int i = 0; i < test; i++){
for(int j = 0; j < 3; j++){
int input;
cin >> input;
abc[j] = input;
}
sort(abc, abc+3);
if((pow(abc[0], 2) + pow(abc[1], 2)) == pow(abc[2], 2))
scenario[i] = 1;
else
scenario[i] = 0;
}
for(int i = 0; i < test; i++){
cout << "Scenario #" << i+1 << ":\n";
if(scenario[i] == 1)
cout << "yes";
else
cout << "no";
cout << "\n\n";
}
}
[결과 화면]
'YJ > C++' 카테고리의 다른 글
[백준/BOJ/C++] 10409번 서버 (0) | 2021.10.19 |
---|---|
[백준/BOJ/C++] 5988번 홀수일까 짝수일까 (0) | 2021.10.19 |
[백준/BOJ/C++] 5613번 계산기 프로그램 (0) | 2021.10.19 |
[백준/BOJ/C++] 3047번 ABC (0) | 2021.10.19 |
[백준/BOJ/C++] 1264번 모음의 개수 (0) | 2021.10.19 |