Codegolf — Letter Boxed, Часть 2: На Этот Раз Разгадайте Его

  • Автор темы Al.kuz
  • Обновлено
  • 23, Oct 2024
  • #1

Этот вызов является продолжением Валидатор в почтовом ящике.

У New York Times есть ежедневная онлайн-игра под названием Письмо в коробке (ссылка находится за платным доступом; игра также описана) здесь), представленный на квадрате следующим образом:

codegolf — Letter Boxed, часть 2: на этот раз разгадайте его

Вам даны 4 группы по 3 буквы (каждая группа соответствует одной стороне картинки); ни одна буква не появляется дважды. Цель игры — найти слова, состоящие из этих 12 букв (и только этих букв), такие, что:

  • Каждое слово имеет длину не менее 3 букв;
  • Последовательные буквы не могут быть с одной стороны;
  • Последняя буква слова становится первой буквой следующего слова;
  • Все буквы используются хотя бы один раз (буквы можно использовать повторно).

В этом задании вам даются буквы и словарь. Цель состоит в том, чтобы вывести правильное решение, которое сводит к минимуму количество используемых слов. Если решения нет, приемлемы любые последовательные результаты.

Для ввода {{QGN}, {ZUR}, {AHK}, {ITE}} , a valid solution is PILGRIMAGE, ENCLOSE. Another valid solution is SOMNOLENCE, EPIGRAM. The following are not valid:

  • ПАЛОМНИЧЕСТВО, ЭКОНОМИКА (не может быть CO, так как они на одной стороне)
  • ГРИМАСЫ, СОПРАНО (Л не использовалась)
  • ПАЛОМНИЧЕСТВО, ЗАКРЫТИЕ (У не является одной из 12 букв)
  • ВКЛАДАНИЕ, ПАЛОМНИЧЕСТВО (последняя буква 1-го слова не является первой буквой 2-го слова)
  • УРОЖАЙ, ПАРУС, LEAN, НЕТ, ЭНИГМА (количество слов не минимальное)

Вход

Ввод состоит из словаря и 4 групп по 3 буквы. Оно может быть в любом подходящем формате.

Выход

Список слов, дающих решение задачи. Приемлемых решений может быть несколько: вы должны вывести хотя бы одно, но при желании можете вывести и несколько.

Тестовые случаи

В тестовых примерах используются этот словарь. Если использование большого словаря слишком сложно ТИО, вместо этого вы можете использовать словарь {{AQT}, {LUI}, {BOE}, {NSY}} , but your code should in principle work on a larger dictionary.

Обратите внимание, что решение не обязательно уникально; это возможные решения.

Ввод= {{BCD}, {FGH}, {JKL}, {MNP}} . Solution: PILGRIMAGE, ENCLOSE

Вход: {{OSA}, {FVK}, {WEL}, {CTR}} . Solution: OVERFLOWS, STACK.

Вход: {{I,C,O}, {M,R,E}, {G,N,S}, {A,P,L}} . No solution.

Вход: {PILGRIMAGE, ENCLOSE, SOMNOLENCE, EPIGRAM, ECONOMIES, GRIMACES, SOPRANO, ENCLOSURE, CROPS, SAIL, LEAN, NOPE, ENIGMA, OVERFLOWS, STACK, QUESTIONABLY, QUARTZ, ZIGZAG, GHERKIN, CODE, GOLF, NO, I, DO, NOT, IN} . Solution: QUESTIONABLY

Вход: {{I,C,O}, {M,R,E}, {G,N,S}, {A,P,L}} . Solution: QUARTZ, ZIGZAG, GHERKIN.

Оценка:

Побеждает тот, у кого наименьший результат в байтах!

#код-гольф #код-гольф #игра

Al.kuz


Рег
23 Apr, 2024

Тем
69

Постов
193

Баллов
548
  • 26, Oct 2024
  • #2

Желе, 38 байт

 iⱮⱮL>2ƊƇẠƇ’:3IẠƲƇŒPU=ḢɗƝẠ$ƇFQL=ʋƇ12ịḷḢ
 

Попробуйте онлайн!

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

Полное объяснение последует, когда игра станет немного лучше.

 

Chepelevandrei


Рег
29 Apr, 2008

Тем
76

Постов
212

Баллов
622
Тем
403,760
Комментарии
400,028
Опыт
2,418,908

Интересно