Проектная лаборатория
Собственный Redis
Этап 109 · Геопространственные команды
Ответ на GEOADD
Русский перевод заданий CodeCrafters. Примеры подготовлены для Go. Выбор языка меняет команды и результаты, но не текст задания.
На этом этапе вы добавите ответ на команду GEOADD.
Предварительные требования
Этот этап зависит от расширения «Упорядоченные множества». Перед началом убедитесь, что оно пройдено.
Команда GEOADD
Команда GEOADD добавляет в ключ местоположение с долготой, широтой и именем.
Пример:
> GEOADD places -0.0884948 51.506479 "London"
(integer) 1Аргументы GEOADD:
key: ключ для хранения местоположения.longitude: долгота.latitude: широта.member: имя местоположения.
Возвращается число добавленных элементов в формате целого числа RESP.
Здесь достаточно реализовать ответ GEOADD. Проверку аргументов и хранение местоположений добавим позже.
Проверки
Тестирующая система запустит программу так:
$ ./your_program.shЗатем отправит команду GEOADD:
$ redis-cli GEOADD places 11.5030378 48.164271 MunichОжидаемый ответ — :1\r\n, то есть 1 (число добавленных местоположений) в формате целого числа RESP.
Примечания
- На этом этапе нужен только ответ на
GEOADD. Проверку аргументов и хранение местоположений реализуем позже.
Проверка в вашей IDE
Нужны Node.js, Git, Go 1.24+ для тестеров и инструменты выбранного языка. Тестеры загружаются и запускаются локально; отдельным проектам нужны дополнительные системные зависимости.
Настройка проекта и IDE
1. Создайте проект один раз
node '/opt/graphlms/tools/project-lab/cli.mjs' init redis ./my-redis --language go2. Откройте папку в IDE
cd ./my-redisРеализуйте требования этапа в созданном проекте.
Запустите из папки проекта
node '/opt/graphlms/tools/project-lab/cli.mjs' submit --stage zt4Запускайте submit из папки проекта. Это локальные проверки, а не сертификаты или результаты аккаунта CodeCrafters.
Результат проверки
go / ЛОКАЛЬНОПодключение к локальной проверке…
Здесь появится результат
Запустите submit в терминале. Страница обновляет результаты каждые 8 секунд.