14 декабря 2019 г., штаб-квартира Kaidee в Бангкоке. Я присоединился к конкурсу codewar. Вопросы на вечеринке были такими забавными. Я мог бы использовать его, чтобы отсеять своих кандидатов

Квалификационный раунд:
Найдите наивысший балл предложения из заданного вложенного графа полезная нагрузка. Примером здесь является green martian, который равен 1 + 5 = 6.

{
    "name": "green",
    "score": 1,
    "children": [
        {
            "name": "house",
            "score": 1,
            "children": []
        },
        {
            "name": "martian",
            "score": 5,
            "children": []
        },
        {
            "name": "som tum",
            "score": 3,
            "children": []
        }
    ]
}

"Вопрос"

Первый вопрос:Где ваше последнее направление x=0, y=0 ваша начальная точка
Прочитайте файл из `direction.txt`. Перейти на север означает двигаться в направлении +y, идти на юг означает двигаться в направлении -y Один и тот же логин применяется к востоку и западу в направлении x

направление.txt

Второй вопрос: фондовый рынок

Данный файл sp500.txt содержит дату и цену закрытия фондового индекса S&P500 для каждого торгового дня с 1927 года по сегодняшний день.

Формат:

<date> <closing price> ^-- column 1 ^-- column 15

Представьте, что вы инвестировали, а затем ждали 60 торговых дней. Рассчитайте лучшие и худшие даты для покупки/продажи (измеряемые процентной доходностью) за 60-торговых дней.

Пример, возврат с 1980–01–15 по 1980–04–10:

1980-01-15 111.139999 1980-04-10 104.080002

( 104.080002 / 111.139999 ) - 1

Третий вопрос: НАТО

Официальный фонетический алфавит НАТО:

"ALFA", "BRAVO", "CHARLIE", "DELTA", "ECHO", "FOXTROT", "GOLF", "HOTEL", "INDIA", "JULIETT", "KILO", "LIMA", "MIKE", "NOVEMBER", "OSCAR", "PAPA", "QUEBEC", "ROMEO", "SIERRA", "TANGO", "UNIFORM", "VICTOR", "WHISKEY", "XRAY", "YANKEE", "ZULU"

Полное церемониальное название Бангкока:

KRUNGTHEPMAHANAKHONAMONRATTANAKOSINMAHINTHARAYUTTHAYA MAHADILOKPHOPNOPPHARATRATCHATHANIBURIROMUDOMRATCHANIWET MAHASATHANAMONPHIMANAWATANSATHITSAKKATHATTIYAWITSANUKAMPRASIT

Произнесите каждую букву церемониального названия Бангкока, используя фонетический алфавит НАТО, например:

KILOROMEOUNIFORM...

Какова общая длина конечной строки?

Вопрос

Автозаполнение T9

В файле contacts.txt есть имена и номера телефонов.

Формат:

<name> <phone> ^-- column 1 ^-- column 24

Ваша программа должна получить последовательность чисел и вернуть возможные контакты, которые она может сопоставить на клавиатуре телефона.

Буквы для автозаполнения T9:

[[2, "ABC"], [3, "DEF"], [4, "GHI"], [5, "JKL"], [6, "MNO"], [7, "PQRS"], [8, "TUV"], [9, "WXYZ"]]

Для простоты: — Игнорируйте 1 и 0 для сопоставления имен. — Предположим, что совпадения всегда начинаются с начала имени или номера телефона.

Вывести контакты автозаполнения для следующих входов:

  • 728
  • 5203
  • 273
  • 2738

Вопрос

Гутенберг

На дворе 1400 год, и вы печатаете книгу на своем печатном станке.

Чтобы распечатать страницу, вы размещаете каждый символ на прессе, чтобы сформировать слова. Однако у вас есть только следующее количество каждого символа в вашем наборе для печати:

[["a", 35], ["b", 8], ["c", 8], ["d", 20], ["e", 70], ["f", 20], ["g", 10], ["h", 40], ["i", 35], ["k", 5], ["l", 20], ["m", 8], ["n", 30], ["o", 40], ["p", 10], ["q", 2], ["r", 35], ["s", 35], ["t", 40], ["u", 15], ["v", 5], ["w", 18], ["y", 8], ["z", 2]]

Когда у вас закончатся символы, вам нужно начать новую страницу.

Предположения:

  • Максимальное количество символов, которые вы можете иметь на странице, не ограничено (кроме числа, которое есть в вашем наборе).
  • Нет разницы между заглавными и строчными буквами
  • Игнорировать все числа, пробелы, возвраты и специальные символы

Сколько страниц нужно, чтобы напечатать книгу Беовульф

› Ответ на 401 странице

Вопрос

Машина времени

Я построил машину времени! Он стартует сегодня, в субботу, 14 декабря 2019 года.

Каждый раз, когда я нажимаю большую красную кнопку, она должна переходить в будущее ровно на 1 год, поэтому после того, как я нажму кнопку один раз, наступит понедельник, 14 декабря 2020 года.

Но у моей машины времени две ошибки!

  • Если сейчас 29 февраля (високосный год), нажатие красной кнопки заставляет машину времени взорваться.
  • Если сегодня вторник, нажатие красной кнопки заставляет машину времени вернуться на 2 дня назад в прошлое.

Если я продолжу нажимать красную кнопку, в каком году я буду, когда взорвется машина времени?

› Ans около 5 тысяч лет

Заключительный вопрос:

Художник

Цель этого вопроса - написать программу, которая выводит команды для бота, чтобы нарисовать заданное изображение ASCII.

Загрузите соответствующий двоичный файл для вашей архитектуры:

Загрузите это ASCII-изображение.

Эта программа создает изображение в формате ASCII путем перемещения печатающего робота. Вот команды робота:

  • r -- повернуть направо на 90 градусов
  • l -- повернуть налево на 90 градусов
  • a -- повернуться
  • u -- перо вверх
  • d -- ручка опущена
  • m -- двигаться вперед

Ваш холст имеет ширину 40 символов и высоту 20 символов. Ваш робот начинает с верхнего левого угла холста, лицом вверх и ручкой вверх. Если вы опустите ручку, вы сразу же начнете печатать на своем текущем квадрате. Если вы двигаетесь ручкой вниз, вы будете печатать на любых клетках, на которые переместитесь.

Запустите программу в командной строке с одним аргументом, содержащим все команды вашего робота по порядку.

Пример 1:

artist-linux-amd64 rdmmm

Производит следующий вывод (пустые области опущены):

xxxx x

Пример 2:

artist-linux-amd64 rmmadmmlmmmlmmmmmmmmlmmmlmm

Производит следующий вывод (пустые области опущены):

xxx xxx x x x x xxxxxxxxx

Создайте точную копию picture.txt.

Удачи повеселиться. Я провалился в квалификационном раунде ;p