백준 링크 : https://www.acmicpc.net/problem/4153

문제 개요

입력으로 세 변의 길이가 주어지면 직각삼각형을 만족하는지 판단하는 문제이다.

아이디어


주의사항


코드


// 아래의 코드는 dev c++환경에서 동작됩니다.
// visual studio에서는 bit/stdc++.h가 기본적으로 없기 때문에
// 정삭적인 작동이 되지 않을 수 있습니다.
#include <bits/stdc++.h>
using namespace std;

int a[3];

int main() {
	ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL);
	
	
	while(true)
	{
		cin >> a[0] >> a[1] >> a[2];
		if (a[0] == 0 && a[1] == 0 && a[2] == 0) break;

		sort(a, a + 3);
		if(a[0]*a[0] + a[1]*a[1] == a[2]*a[2])
			cout << "right" << "\\n";	
		else
			cout << "wrong" << "\\n";
	}
	 
    return 0;
}

후기


예제 입력이 오름차순으로 되어있어서 무의식적으로 오름차순이라고 생각했다. 이러한 고정관념을 쉽게 버리지 못해서 문제를 맞추는데 시간을 꽤나 잡아먹었다.

앞으로는 문제를 읽는 시간을 좀 더 할애하고, 문제를 읽더라도 꼭!! 도식화를 해보는 연습을 해야겠다.