Программирование

Решение задачи на должность C# разработчик


14 сентября 2023 г. 12:36


Посетите веб-сайт: https://youtu.be/pBVNA5hwzAI

Разбор задачки: Такую задачу можно встретить на собседовании, все подробно разобрано по ссылке в видео. Приятного просмотра ссылка на страничку видео YouTube

Том работает на складе. Миллиард (1 000 000 000) коробок расположены в ряд. Они пронумерованы от одного до одного миллиарда (слева направо). В некоторых коробках есть баскетбольный мяч (не более одного баскетбольного мяча в каждой коробке). Всего имеется N баскетбольных мячей.

Том хочет организовать склад. Ему хотелось бы, чтобы все баскетбольные мячи были расположены рядом друг с другом и в ряд, что не было пропусков от 1 до N коробки. За один ход Том может взять один баскетбольный мяч и переместить его в пустую коробку. Какое минимальное количество ходов необходимо, чтобы расставить баскетбольные мячи на складе?

Напишите функцию:

Class Solution { public int solution (int [ ] A); }

это, учитывая массив A, содержащий N целых чисел, обозначает позиции баскетбольных мячей (номера коробок, в которых они помещены) и возвращает минимальное количество ходов, необходимое для организации баскетбольных мячей на складе.

Например, если: A = [6, 4, 1, 7, 10], ваша функция должна возвращать 3, поскольку минимальное количество ходов, необходимое для того, чтобы расположить все баскетбольные мячи рядом друг с другом, равно 3.

Напишите эффективный алгоритм для следующих предположений:

N — целое число в диапазоне [1..50 000];
каждый элемент массива A представляет собой целое число в диапазоне [1..1000000000];
числа в массиве A попарно различны.

Решение задачи на должность C# разработчик

Auf YouTube findest du die angesagtesten Videos und Tracks. Außerdem kannst du eigene Inhalte hochladen und mit Freunden oder gleich der ganzen Welt teilen.

Программирование