https://www.acmicpc.net/problem/5073
수학을 한지 꽤 오래되어서 삼각형의 조건을 만족하지 못하는 경우,,,? 를 몰라서 엄청 당황했다.
두변의 길이의 합이 나머지 한변의 길이보다 커야 삼각형이 된다.
나 중학교 나왔는데,,,
조건이 너무 많아서 구현하는데 헷갈렸다. 그리고 이 문제는 if문과 else-if문이 어디서 걸리는지 잘 판단 해야 한다.
아니면 while문 안에서 무한루프등에 빠질 수 있으니,, 특히 종료조건으로 if문은 따로! 빼줘야한다
#include <iostream>
using namespace std;
int main(){
while (1) {
int n1, n2, n3;
cin >> n1 >> n2 >> n3;
if (n1 == 0 && n2 == 0 && n3 == 0) return 0;
if (n1 + n2 <= n3 || n2 + n3 <= n1 || n1 + n3 <= n2) cout << "Invalid" << '\n';
else if (n1 == n2 && n2 == n3) cout << "Equilateral" << '\n';
else if (n1 == n2 || n2 == n3 || n1 == n3) cout << "Isosceles" << '\n';
else if (n1 != n2 && n2 != n3 && n1 != n3) cout << "Scalene" << '\n';
}
}
'Algorithm > 구현, 시뮬레이션' 카테고리의 다른 글
[BAEKJOON] 10431번 줄세우기 (1) | 2024.03.19 |
---|---|
[BAEKJOON] 9655번 돌게임 (1) | 2024.03.19 |
[BAEKJOON] 1157번 단어 공부 (1) | 2024.03.18 |
[BAEKJOON] 2292번 벌집 (0) | 2024.03.18 |
[BAEKJOON] 23971번 ZOAC 4 (0) | 2024.03.18 |