※ 글쓴이는 취미로 코딩을 익혀보는 사람이라 정확하지 않은 내용을 담고 있을 수 있다 ※

 

이번에 볼 문제는 백준 27245번 문제인 Комната이다.
문제는 아래 링크를 확인하자.

https://www.acmicpc.net/problem/27245 

 

27245번: Комната

На вход подаётся три целых числа: $w$, $l$ и $h$ --- длина, ширина и высота комнаты, каждое на отдельной строке ($1000 \le w, l, h \le 10\,000$).

www.acmicpc.net

w와 l 중 최댓값, w와 l 중 최솟값, h의 세 종류의 값이 문제의 주어진 두 비례관계를 만족하는지를 확인하는 문제이다.

 

실수 자료형으로 두 값이 일치하는지를 비교하는 것은 매우 위험한 연산이므로, 주어지는 비례관계를 정수의 곱셈을 이용한 식으로 나타내 문제를 해결하자.

 

아래는 제출한 소스코드이다.

#include <iostream>
using namespace std;

int W, L, H;

int main() {
	ios::sync_with_stdio(0);
	cin.tie(0);

	cin >> W >> L >> H;
	if (H * 2 <= min(W, L) && min(W, L) * 2 >= max(W, L)) cout << "good";
	else cout << "bad";
}
728x90

+ Recent posts