Вроде все верно: цикл ищет минимум, сохраняет в x; Поиском по Map'у ищем значение, получаем его ключ (индекс в массиве) и сохраняем в y. P.S. подозреваю, что такое сохранение в map - костыль, но не сообразил как сделать оптимально.