Требуется создать иерархию классов
Класс координаты: int X и Y метод для определения расстояния между координатами
Класс игрока: никнейм координата игрока
Класс автомобиля: название координата автомобиля игрок - текущий водитель список игроков-пассажиров (макс 3)
Создать общие списки игроков и автомобилей, заполнить случайными данными (1000 игроков и 200 автомобилей, координаты [0, 100]). В основном потоке происходит формирование списков, а одновременно с этим в другом потоке машины начинают заполняться игроками. В первую очередь на место водителя, далее на пассажирские. И так до тех пор, пока не останется свободных машин.
Позиция игрока при этом должна соотвествовать позиции машины
После этого в основном потоке вывести информацию о 5 случайных автомобилях. Затем выбрать случайную машину и вывести всех игроков в радиусе 15 от нее в формате "имя игрока: расстояние".