
문제 설명

https://www.acmicpc.net/problem/19532
19532번: 수학은 비대면강의입니다
정수 , , , , , 가 공백으로 구분되어 차례대로 주어진다. () 문제에서 언급한 방정식을 만족하는 가 유일하게 존재하고, 이 때 와 가 각각 $-
www.acmicpc.net
[브루트 포스 문제]
각각 -999 이상이고 999이하인 (x, y)을 찾는 문제 입니다.
모든 경우의 수는 2000 * 2000이라 O()인 완전탐색으로 풀어도 되지만 더 깔끔하고 효율적인 방법이
존재합니다.
연립 방정식을 풀 때 서로 다른 방정식의 계수를 맞추어 x 또는 y를 없애 값을 구하는 방법을 사용합니다.
x 값 구하기
연립 방정식의 y 계수를 동일하게 만든 후 x만 남도록 두 방정식을 뺍니다.
Y값 구하기
동일하게 연립 방정식의 x 계수를 동일하게 만든 후 y만 남도록 두 방정식을 뺍니다.
코드
#include<iostream>
int main()
{
int a, b, c, d, e, f;
std::cin >> a >> b >> c >> d >> e >> f;
int y = (c * d - a * f) / (b * d - a * e);
int x = (c * e - b * f) / (a * e - b * d);
//결과
std::cout << x << ' ' << y;
return 0;
}
반응형
'Baekjoon > cpp' 카테고리의 다른 글
1697번 - 숨바꼭질 C++ (0) | 2023.07.09 |
---|---|
2178번 - 미로 탐색 C++ (0) | 2023.07.07 |
2003번 - 수들의 합 2 (0) | 2022.07.04 |
1504번 - 특정한 최단 경로 (0) | 2022.06.29 |
2193번- 이친수 (0) | 2022.05.03 |