Вдоль прямой выложены три спички. Необходимо переложить одну из них так, чтобы при поджигании любой спички сгорали все три. Для того чтобы огонь переходил с одной спички на другую, необходимо чтобы эти спички соприкасались (хотя бы концами).
Требуется написать программу, определяющую, какую из трех спичек необходимо переместить.
Формат ввода
Вводятся шесть целых чисел : l₁, r₁, l₂, r₂, l₃, r₃ – координаты первой, второй и третьей спичек соответственно (0 ≤ lᵢ < rᵢ ≤ 100). Каждая спичка описывается координатами левого и правого концов по горизонтальной оси OX.
Формат вывода
Выведите номер искомой спички. Если возможных ответов несколько, то выведите наименьший из них (наименьший по номеру спички). В случае, когда нет необходимости перемещать какую-либо спичку, выведите 0. Если же требуемого результата достигнуть невозможно, то выведите -1.
int main() {
// Создание массива координат и его ввод
array arr;
for (int i = 0; i < 3; ++i) {
for (int j = 0; j < 2; ++j) {
cin >> arr[j];
}
arr[2] = i + 1; // вместе с координатами сохраняем номер спички
}
// Сортировка спичек по координате левого конца
sort(arr.begin(), arr.end(),
[](array a, array b) { return a[0] < b[0]; });
// Отдельная проверка - перекладывать не надо
if (arr[0][1] >= arr[1][0] && max({arr[0][1], arr[1][1]}) >= arr[2][0]) {
cout = arr[2][0] - arr[1][1]) { mov.insert(arr[0][2]); }
if (arr[2][1] - arr[2][0] >= arr[1][0] - arr[0][1]) { mov.insert(arr[2][2]); }