В 2222 году экспедиция на планету XZ-238 в звездной системе ню Малой Медведицы обнаружила в одной из пещер загадочное устройство. Вдоль стены по прямой расположены n треугольных и n круглых гнезд. Расшифровка инструкций, расположенных рядом на стене, показала, что эти гнезда следует соединить проводами: каждое треугольное гнездо должно быть соединено с каким-либо круглым, расположенным правее.
Были изготовлены n
треугольных и n
круглых штекеров, которые можно соединять проводами. Однако никакой маркировки нет, поэтому понять какое гнездо следует соединить с каким не удается. Начальник экспедиции хочет заказать с Земли провода. Решено было заказать один большой моток кабеля, который затем нарезать на соединительные провода. Поскольку доставка грузов с Земли дорога, необходимо заказать как можно меньше кабеля. С другой стороны, поскольку неизвестно какое гнездо требуется соединить с каким, нужно заказать такое количество кабеля, чтобы при любом соединения длины кабеля хватило на изготовление соединительных проводов руководству экспедиции по заданному расположению гнезд вычислить, кабель какой длины следует заказать. Гарантируется, что хотя бы один соединить гнезда описанным образом существует.
Например, рассмотрим расположение гнезд, изображенное на рисунке.
Можно соединить треугольное гнездо 1 с круглым гнездом A, а треугольное гнездо 2 −
с круглым гнездом B. Для такого соединения необходимы провода длины 5 и 4, суммарная длина −
9. Можно также соединить 1 с B и 2 с A, в этом случае необходимы провода длины 7 и 2, суммарная длина также 9. Таким образом необходимо заказать с Земли кабель длиной 9 метров.
В случае же, показанном на следующем рисунке, есть лишь один соединить гнезда: 1 с A, а 2 с B. Гнездо 2 нельзя соединить с A, поскольку A расположено левее. Так что в этом случае необходимо 2 метра кабеля.
Входные данные
Первая строка входного файла содержит число n
(1≤n≤1000). Вторая строка содержит n целых чисел, i-е число означает расстояние от начала стены до i-го треугольного гнезда. Третья строка также содержит n целых чисел, i-е число означает расстояние от начала стены до i-го круглого гнезда. Все числа во второй и третьей строках различны и лежат в диапазоне от 0 до 105
.
Выходные данные
Выведите одно число −
кабель какой длины необходимо заказать с Земли.
Примеры
Входные данные
2
1 4
6 8
Выходные данные
9
Входные данные
2
1 4
2 5
Выходные данные
2
ответ: 16
1-й
Переводим 191 в двоичную систему:
Выполняем команды:
1. 10111111 -> 01011111
1. 01011111 -> 00101111
2. 00101111 + 100 = 00110011
1. 00110011 -> 00011001
1. 00011001 -> 00001100
2. 00001100 + 100 = 00010000
Переводим результат в десятичную систему:
2-й
Сдвиг на один разряд вправо в двоичной системе означает целочисельное деление на 2 (остаток отбрасываем). Выполняем команды:
1. 191 : 2 --> 95
1. 95 : 2 --> 47
2. 47 + 4 = 51
1. 51 : 2 --> 25
1. 25 : 2 --> 12
2. 12 + 4 = 16
9.
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
int a, b, c, x;
cin >> x;
if ( x<=999 ) {
a = (x / 100)%10;
b = (x / 10)%10;
c = (x / 1)%10;
cout << "Число десятко - " << a <<b <<endl;
cout << "Произведение цифр - " << a*b*c <<endl;
}
return 0;
}
10.
#include <iomanip>
using namespace std;
int main()
{
int a, b, c, d, x;
cin >> x;
if (x<=9999) {
a = x / 1000;
b = (x / 100)%10;
c = (x / 10)%10;
d = (x / 1)%10;
cout << d<<c<<b<<a << endl;
}
return 0;
}
11.
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
int a, b, c, d, x;
cin >> x;
if (x<=9999) {
a = x / 1000;
b = (x / 100)%10;
c = (x / 10)%10;
d = (x / 1)%10;
if ( b == 0){
cout <<a <<d <<c << endl;
}else {
cout <<b <<a <<d <<c << endl;
}
}
return 0;
}