BAEKJOON/C++
[B2467][용액][C++]
sseni
2023. 1. 26. 17:15
728x90
두 용액 : 산성, 알칼리성
1. 용액마다 용액의 특성을 나타내는 하나의 정수가 주어짐
2. 산성 : 1 ~ 1,000,000,000 까지의 양의 정수
3. 알칼리성 : -1 ~ -1,000,000,000 까지의 음의 정수
4. 같은 양의 두 용액을 혼합한 용액의 특성 값은 각 용액의 특성값의 합으로 정의
5. 같은 양의 두 용액을 혼합하여 특성값이 0에 가까운 용액을 만들려고 함
6. 같은 종류의 알칼리 혹은 산으로 만들수도 있음
ex. [-99, -2, -1, 4, 98] 일 때,
-99와 98 = -1 -> 0에 가장 가까움
-99 –2 –1 4 98
-99 98 = -1
-2 98 > –99 4
#include <iostream>
using namespace std;
int n;
long long int arr[100001];
long long int x, y;
int main() {
cin >> n;
for (int i = 0; i < n; i++)
cin >> arr[i];
int start = 0, end = n-1;
x = arr[start], y = arr[end];
int mix = abs(x + y);
while (start < end) {
if (mix > abs(arr[start] + arr[end])) {
mix = abs(arr[start] + arr[end]);
x = arr[start];
y = arr[end];
}
if (abs(arr[start + 1] + arr[end]) > abs(arr[start] + arr[end - 1]))
end--;
else start++;
}
cout << x << " " << y;
}
728x90