Arhn - архитектура программирования

Код Гольф: номер телефона в слова

Рекомендации по код-гольфу на SO

Все мы видели номера телефонов, которые можно описать словами: 1-800-КУПИТЬ-БОЛЬШЕ и т. Д.

Какой самый короткий код, который вы можете написать, будет давать все возможные комбинации слов для 7-значного телефонного номера в США.

Ввод будет семизначным целым числом (или строкой, если это проще), и предполагается, что ввод правильно сформирован.

Результатом будет список семизначных строк, которые

Например, число 428-5246 даст

ГАТЯГМ
ГАТЯГН
ГАТЯГО
ГАТЯХМ
ГАТЯГН
ГАТЯГО
ГАТЯИМ
ГАТЯИН
ГАТЯЙО и так далее .....

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

Дополнительные замечания:

  • Чтобы сделать его более интересным, слова можно формировать только с помощью букв на телефоне Североамериканская классическая клавиатура с тремя буквами на цифру , как определено здесь. Это означает, что Z и Q исключены.
  • Вместо числа «1» поставьте пробел.
  • Вместо числа «0» поставьте дефис «-».

Бонусные баллы начисляются за распознавание результатов как настоящие английские слова. Ладно, не совсем. ;-)

Добавлено: Хорошо, давайте перейдем к «Модифицированной Североамериканской классической клавиатуре Ника», у которой на клавише 6 есть «О» (о, не ноль).


  • На классической клавиатуре NA нет буквы O, которую вы использовали в своем примере. Так какой из них вы используете? 04.06.2010
  • должны ли решения быть голыми функциями или полными программами? 04.06.2010
  • буква O в словах набирается как 0 (ноль), поэтому она не включена в макет NA с Mand N под 6. Для 1 я думаю, что лучше оставить в покое, поэтому числа вроде IAMTHE1, NUMBER1, ONLY1 возможны. проблема так, что: 0 - ›'O', 1 -› '1' 04.06.2010
  • @Nick - последнее изменение гласит, что "O" (о) должно быть на клавише 5. Вы имели ввиду по клавише 6? 04.06.2010
  • @Anurag - Ага! Да, изменилось. 04.06.2010

Ответы:


1

q, 52 39 символов

(cross/)(3 cut"--- ",.Q.A except"QZ")

q оценивается слева направо.

.Q.A содержит вектор "ABC ... XYZ"

except возвращает x, исключая значения в y

присоединить "---" к измененному вектору символов

нарезать кусочками по 3

cross возвращает все возможные комбинации и применяется ко всем чанкам

q)(cross/)(3 cut"---   ",.Q.A except"QZ")[4 2 8 5 2 4 6] 
"GATJAGM"
"GATJAGN"
"GATJAGO"
"GATJAHM"
"GATJAHN"
"GATJAHO"
"GATJAIM"
"GATJAIN"
"GATJAIO"
....
04.06.2010
  • Этот q такой же, как Q в en.wikipedia.org/wiki/Q_%28programming_language% 29? 04.06.2010
  • Нет, это en.wikipedia.org/wiki/Q_(programming_language_from_Kx_Systems) Для обзор языка см. на code.kx.com 04.06.2010

  • 2

    Python, 107 символов

    f=lambda p:p and[i+j for i in'O 1 ABC DEF GHI JKL MN PRS TUV WXY'.split()
    [int(p[0])]for j in f(p[1:])]or[p]
    

    Python, 122 символа (старая версия с сокращением)

    f=lambda p:reduce(lambda x,y:[i+j for i in x for j in y],
    ['O 1 ABC DEF GHI JKL MN PRS TUV WXY'.split()[int(k)]for k in p])
    

    пс. Дайте мне немного "палец вверх", здесь новенькое, и мне нужны голоса

    Пример использования:

    >>> len(f('4285246'))
    1458
    >>> f('4285246')
    ['GATJAGM', 'GATJAGN', 'GATJAHM', 'GATJAHN', 'GATJAIM', 'GATJAIN', 'GATJBGM', 'GATJBGN', 'GATJBHM', 'GATJBHN', 'GATJBIM', 'GATJBIN', 'GATJCGM', 'GATJCGN', 'GATJCHM', 'GATJCHN', 'GATJCIM', 'GATJCIN', 'GATKAGM', 'GATKAGN', 'GATKAHM', 'GATKAHN', 'GATKAIM', 'GATKAIN', 'GATKBGM', 'GATKBGN', 'GATKBHM', 'GATKBHN', 'GATKBIM', 'GATKBIN', 'GATKCGM', 'GATKCGN', 'GATKCHM', 'GATKCHN', 'GATKCIM', 'GATKCIN', 'GATLAGM', 'GATLAGN', 'GATLAHM', 'GATLAHN', 'GATLAIM', 'GATLAIN', 'GATLBGM', 'GATLBGN', 'GATLBHM', 'GATLBHN', 'GATLBIM', 'GATLBIN', 'GATLCGM', 'GATLCGN', 'GATLCHM', 'GATLCHN', 'GATLCIM', 'GATLCIN', 'GAUJAGM', 'GAUJAGN', 'GAUJAHM', 'GAUJAHN', 'GAUJAIM', 'GAUJAIN', 'GAUJBGM', 'GAUJBGN', 'GAUJBHM', 'GAUJBHN', 'GAUJBIM', 'GAUJBIN', 'GAUJCGM', 'GAUJCGN', 'GAUJCHM', 'GAUJCHN', 'GAUJCIM', 'GAUJCIN', 'GAUKAGM', 'GAUKAGN', 'GAUKAHM', 'GAUKAHN', 'GAUKAIM', 'GAUKAIN', 'GAUKBGM', 'GAUKBGN', 'GAUKBHM', 'GAUKBHN', 'GAUKBIM', 'GAUKBIN', 'GAUKCGM', 'GAUKCGN', 'GAUKCHM', 'GAUKCHN', 'GAUKCIM', 'GAUKCIN', 'GAULAGM', 'GAULAGN', 'GAULAHM', 'GAULAHN', 'GAULAIM', 'GAULAIN', 'GAULBGM', 'GAULBGN', 'GAULBHM', 'GAULBHN', 'GAULBIM', 'GAULBIN', 'GAULCGM', 'GAULCGN', 'GAULCHM', 'GAULCHN', 'GAULCIM', 'GAULCIN', 'GAVJAGM', 'GAVJAGN', 'GAVJAHM', 'GAVJAHN', 'GAVJAIM', 'GAVJAIN', 'GAVJBGM', 'GAVJBGN', 'GAVJBHM', 'GAVJBHN', 'GAVJBIM', 'GAVJBIN', 'GAVJCGM', 'GAVJCGN', 'GAVJCHM', 'GAVJCHN', 'GAVJCIM', 'GAVJCIN', 'GAVKAGM', 'GAVKAGN', 'GAVKAHM', 'GAVKAHN', 'GAVKAIM', 'GAVKAIN', 'GAVKBGM', 'GAVKBGN', 'GAVKBHM', 'GAVKBHN', 'GAVKBIM', 'GAVKBIN', 'GAVKCGM', 'GAVKCGN', 'GAVKCHM', 'GAVKCHN', 'GAVKCIM', 'GAVKCIN', 'GAVLAGM', 'GAVLAGN', 'GAVLAHM', 'GAVLAHN', 'GAVLAIM', 'GAVLAIN', 'GAVLBGM', 'GAVLBGN', 'GAVLBHM', 'GAVLBHN', 'GAVLBIM', 'GAVLBIN', 'GAVLCGM', 'GAVLCGN', 'GAVLCHM', 'GAVLCHN', 'GAVLCIM', 'GAVLCIN', 'GBTJAGM', 'GBTJAGN', 'GBTJAHM', 'GBTJAHN', 'GBTJAIM', 'GBTJAIN', 'GBTJBGM', 'GBTJBGN', 'GBTJBHM', 'GBTJBHN', 'GBTJBIM', 'GBTJBIN', 'GBTJCGM', 'GBTJCGN', 'GBTJCHM', 'GBTJCHN', 'GBTJCIM', 'GBTJCIN', 'GBTKAGM', 'GBTKAGN', 'GBTKAHM', 'GBTKAHN', 'GBTKAIM', 'GBTKAIN', 'GBTKBGM', 'GBTKBGN', 'GBTKBHM', 'GBTKBHN', 'GBTKBIM', 'GBTKBIN', 'GBTKCGM', 'GBTKCGN', 'GBTKCHM', 'GBTKCHN', 'GBTKCIM', 'GBTKCIN', 'GBTLAGM', 'GBTLAGN', 'GBTLAHM', 'GBTLAHN', 'GBTLAIM', 'GBTLAIN', 'GBTLBGM', 'GBTLBGN', 'GBTLBHM', 'GBTLBHN', 'GBTLBIM', 'GBTLBIN', 'GBTLCGM', 'GBTLCGN', 'GBTLCHM', 'GBTLCHN', 'GBTLCIM', 'GBTLCIN', 'GBUJAGM', 'GBUJAGN', 'GBUJAHM', 'GBUJAHN', 'GBUJAIM', 'GBUJAIN', 'GBUJBGM', 'GBUJBGN', 'GBUJBHM', 'GBUJBHN', 'GBUJBIM', 'GBUJBIN', 'GBUJCGM', 'GBUJCGN', 'GBUJCHM', 'GBUJCHN', 'GBUJCIM', 'GBUJCIN', 'GBUKAGM', 'GBUKAGN', 'GBUKAHM', 'GBUKAHN', 'GBUKAIM', 'GBUKAIN', 'GBUKBGM', 'GBUKBGN', 'GBUKBHM', 'GBUKBHN', 'GBUKBIM', 'GBUKBIN', 'GBUKCGM', 'GBUKCGN', 'GBUKCHM', 'GBUKCHN', 'GBUKCIM', 'GBUKCIN', 'GBULAGM', 'GBULAGN', 'GBULAHM', 'GBULAHN', 'GBULAIM', 'GBULAIN', 'GBULBGM', 'GBULBGN', 'GBULBHM', 'GBULBHN', 'GBULBIM', 'GBULBIN', 'GBULCGM', 'GBULCGN', 'GBULCHM', 'GBULCHN', 'GBULCIM', 'GBULCIN', 'GBVJAGM', 'GBVJAGN', 'GBVJAHM', 'GBVJAHN', 'GBVJAIM', 'GBVJAIN', 'GBVJBGM', 'GBVJBGN', 'GBVJBHM', 'GBVJBHN', 'GBVJBIM', 'GBVJBIN', 'GBVJCGM', 'GBVJCGN', 'GBVJCHM', 'GBVJCHN', 'GBVJCIM', 'GBVJCIN', 'GBVKAGM', 'GBVKAGN', 'GBVKAHM', 'GBVKAHN', 'GBVKAIM', 'GBVKAIN', 'GBVKBGM', 'GBVKBGN', 'GBVKBHM', 'GBVKBHN', 'GBVKBIM', 'GBVKBIN', 'GBVKCGM', 'GBVKCGN', 'GBVKCHM', 'GBVKCHN', 'GBVKCIM', 'GBVKCIN', 'GBVLAGM', 'GBVLAGN', 'GBVLAHM', 'GBVLAHN', 'GBVLAIM', 'GBVLAIN', 'GBVLBGM', 'GBVLBGN', 'GBVLBHM', 'GBVLBHN', 'GBVLBIM', 'GBVLBIN', 'GBVLCGM', 'GBVLCGN', 'GBVLCHM', 'GBVLCHN', 'GBVLCIM', 'GBVLCIN', 'GCTJAGM', 'GCTJAGN', 'GCTJAHM', 'GCTJAHN', 'GCTJAIM', 'GCTJAIN', 'GCTJBGM', 'GCTJBGN', 'GCTJBHM', 'GCTJBHN', 'GCTJBIM', 'GCTJBIN', 'GCTJCGM', 'GCTJCGN', 'GCTJCHM', 'GCTJCHN', 'GCTJCIM', 'GCTJCIN', 'GCTKAGM', 'GCTKAGN', 'GCTKAHM', 'GCTKAHN', 'GCTKAIM', 'GCTKAIN', 'GCTKBGM', 'GCTKBGN', 'GCTKBHM', 'GCTKBHN', 'GCTKBIM', 'GCTKBIN', 'GCTKCGM', 'GCTKCGN', 'GCTKCHM', 'GCTKCHN', 'GCTKCIM', 'GCTKCIN', 'GCTLAGM', 'GCTLAGN', 'GCTLAHM', 'GCTLAHN', 'GCTLAIM', 'GCTLAIN', 'GCTLBGM', 'GCTLBGN', 'GCTLBHM', 'GCTLBHN', 'GCTLBIM', 'GCTLBIN', 'GCTLCGM', 'GCTLCGN', 'GCTLCHM', 'GCTLCHN', 'GCTLCIM', 'GCTLCIN', 'GCUJAGM', 'GCUJAGN', 'GCUJAHM', 'GCUJAHN', 'GCUJAIM', 'GCUJAIN', 'GCUJBGM', 'GCUJBGN', 'GCUJBHM', 'GCUJBHN', 'GCUJBIM', 'GCUJBIN', 'GCUJCGM', 'GCUJCGN', 'GCUJCHM', 'GCUJCHN', 'GCUJCIM', 'GCUJCIN', 'GCUKAGM', 'GCUKAGN', 'GCUKAHM', 'GCUKAHN', 'GCUKAIM', 'GCUKAIN', 'GCUKBGM', 'GCUKBGN', 'GCUKBHM', 'GCUKBHN', 'GCUKBIM', 'GCUKBIN', 'GCUKCGM', 'GCUKCGN', 'GCUKCHM', 'GCUKCHN', 'GCUKCIM', 'GCUKCIN', 'GCULAGM', 'GCULAGN', 'GCULAHM', 'GCULAHN', 'GCULAIM', 'GCULAIN', 'GCULBGM', 'GCULBGN', 'GCULBHM', 'GCULBHN', 'GCULBIM', 'GCULBIN', 'GCULCGM', 'GCULCGN', 'GCULCHM', 'GCULCHN', 'GCULCIM', 'GCULCIN', 'GCVJAGM', 'GCVJAGN', 'GCVJAHM', 'GCVJAHN', 'GCVJAIM', 'GCVJAIN', 'GCVJBGM', 'GCVJBGN', 'GCVJBHM', 'GCVJBHN', 'GCVJBIM', 'GCVJBIN', 'GCVJCGM', 'GCVJCGN', 'GCVJCHM', 'GCVJCHN', 'GCVJCIM', 'GCVJCIN', 'GCVKAGM', 'GCVKAGN', 'GCVKAHM', 'GCVKAHN', 'GCVKAIM', 'GCVKAIN', 'GCVKBGM', 'GCVKBGN', 'GCVKBHM', 'GCVKBHN', 'GCVKBIM', 'GCVKBIN', 'GCVKCGM', 'GCVKCGN', 'GCVKCHM', 'GCVKCHN', 'GCVKCIM', 'GCVKCIN', 'GCVLAGM', 'GCVLAGN', 'GCVLAHM', 'GCVLAHN', 'GCVLAIM', 'GCVLAIN', 'GCVLBGM', 'GCVLBGN', 'GCVLBHM', 'GCVLBHN', 'GCVLBIM', 'GCVLBIN', 'GCVLCGM', 'GCVLCGN', 'GCVLCHM', 'GCVLCHN', 'GCVLCIM', 'GCVLCIN', 'HATJAGM', 'HATJAGN', 'HATJAHM', 'HATJAHN', 'HATJAIM', 'HATJAIN', 'HATJBGM', 'HATJBGN', 'HATJBHM', 'HATJBHN', 'HATJBIM', 'HATJBIN', 'HATJCGM', 'HATJCGN', 'HATJCHM', 'HATJCHN', 'HATJCIM', 'HATJCIN', 'HATKAGM', 'HATKAGN', 'HATKAHM', 'HATKAHN', 'HATKAIM', 'HATKAIN', 'HATKBGM', 'HATKBGN', 'HATKBHM', 'HATKBHN', 'HATKBIM', 'HATKBIN', 'HATKCGM', 'HATKCGN', 'HATKCHM', 'HATKCHN', 'HATKCIM', 'HATKCIN', 'HATLAGM', 'HATLAGN', 'HATLAHM', 'HATLAHN', 'HATLAIM', 'HATLAIN', 'HATLBGM', 'HATLBGN', 'HATLBHM', 'HATLBHN', 'HATLBIM', 'HATLBIN', 'HATLCGM', 'HATLCGN', 'HATLCHM', 'HATLCHN', 'HATLCIM', 'HATLCIN', 'HAUJAGM', 'HAUJAGN', 'HAUJAHM', 'HAUJAHN', 'HAUJAIM', 'HAUJAIN', 'HAUJBGM', 'HAUJBGN', 'HAUJBHM', 'HAUJBHN', 'HAUJBIM', 'HAUJBIN', 'HAUJCGM', 'HAUJCGN', 'HAUJCHM', 'HAUJCHN', 'HAUJCIM', 'HAUJCIN', 'HAUKAGM', 'HAUKAGN', 'HAUKAHM', 'HAUKAHN', 'HAUKAIM', 'HAUKAIN', 'HAUKBGM', 'HAUKBGN', 'HAUKBHM', 'HAUKBHN', 'HAUKBIM', 'HAUKBIN', 'HAUKCGM', 'HAUKCGN', 'HAUKCHM', 'HAUKCHN', 'HAUKCIM', 'HAUKCIN', 'HAULAGM', 'HAULAGN', 'HAULAHM', 'HAULAHN', 'HAULAIM', 'HAULAIN', 'HAULBGM', 'HAULBGN', 'HAULBHM', 'HAULBHN', 'HAULBIM', 'HAULBIN', 'HAULCGM', 'HAULCGN', 'HAULCHM', 'HAULCHN', 'HAULCIM', 'HAULCIN', 'HAVJAGM', 'HAVJAGN', 'HAVJAHM', 'HAVJAHN', 'HAVJAIM', 'HAVJAIN', 'HAVJBGM', 'HAVJBGN', 'HAVJBHM', 'HAVJBHN', 'HAVJBIM', 'HAVJBIN', 'HAVJCGM', 'HAVJCGN', 'HAVJCHM', 'HAVJCHN', 'HAVJCIM', 'HAVJCIN', 'HAVKAGM', 'HAVKAGN', 'HAVKAHM', 'HAVKAHN', 'HAVKAIM', 'HAVKAIN', 'HAVKBGM', 'HAVKBGN', 'HAVKBHM', 'HAVKBHN', 'HAVKBIM', 'HAVKBIN', 'HAVKCGM', 'HAVKCGN', 'HAVKCHM', 'HAVKCHN', 'HAVKCIM', 'HAVKCIN', 'HAVLAGM', 'HAVLAGN', 'HAVLAHM', 'HAVLAHN', 'HAVLAIM', 'HAVLAIN', 'HAVLBGM', 'HAVLBGN', 'HAVLBHM', 'HAVLBHN', 'HAVLBIM', 'HAVLBIN', 'HAVLCGM', 'HAVLCGN', 'HAVLCHM', 'HAVLCHN', 'HAVLCIM', 'HAVLCIN', 'HBTJAGM', 'HBTJAGN', 'HBTJAHM', 'HBTJAHN', 'HBTJAIM', 'HBTJAIN', 'HBTJBGM', 'HBTJBGN', 'HBTJBHM', 'HBTJBHN', 'HBTJBIM', 'HBTJBIN', 'HBTJCGM', 'HBTJCGN', 'HBTJCHM', 'HBTJCHN', 'HBTJCIM', 'HBTJCIN', 'HBTKAGM', 'HBTKAGN', 'HBTKAHM', 'HBTKAHN', 'HBTKAIM', 'HBTKAIN', 'HBTKBGM', 'HBTKBGN', 'HBTKBHM', 'HBTKBHN', 'HBTKBIM', 'HBTKBIN', 'HBTKCGM', 'HBTKCGN', 'HBTKCHM', 'HBTKCHN', 'HBTKCIM', 'HBTKCIN', 'HBTLAGM', 'HBTLAGN', 'HBTLAHM', 'HBTLAHN', 'HBTLAIM', 'HBTLAIN', 'HBTLBGM', 'HBTLBGN', 'HBTLBHM', 'HBTLBHN', 'HBTLBIM', 'HBTLBIN', 'HBTLCGM', 'HBTLCGN', 'HBTLCHM', 'HBTLCHN', 'HBTLCIM', 'HBTLCIN', 'HBUJAGM', 'HBUJAGN', 'HBUJAHM', 'HBUJAHN', 'HBUJAIM', 'HBUJAIN', 'HBUJBGM', 'HBUJBGN', 'HBUJBHM', 'HBUJBHN', 'HBUJBIM', 'HBUJBIN', 'HBUJCGM', 'HBUJCGN', 'HBUJCHM', 'HBUJCHN', 'HBUJCIM', 'HBUJCIN', 'HBUKAGM', 'HBUKAGN', 'HBUKAHM', 'HBUKAHN', 'HBUKAIM', 'HBUKAIN', 'HBUKBGM', 'HBUKBGN', 'HBUKBHM', 'HBUKBHN', 'HBUKBIM', 'HBUKBIN', 'HBUKCGM', 'HBUKCGN', 'HBUKCHM', 'HBUKCHN', 'HBUKCIM', 'HBUKCIN', 'HBULAGM', 'HBULAGN', 'HBULAHM', 'HBULAHN', 'HBULAIM', 'HBULAIN', 'HBULBGM', 'HBULBGN', 'HBULBHM', 'HBULBHN', 'HBULBIM', 'HBULBIN', 'HBULCGM', 'HBULCGN', 'HBULCHM', 'HBULCHN', 'HBULCIM', 'HBULCIN', 'HBVJAGM', 'HBVJAGN', 'HBVJAHM', 'HBVJAHN', 'HBVJAIM', 'HBVJAIN', 'HBVJBGM', 'HBVJBGN', 'HBVJBHM', 'HBVJBHN', 'HBVJBIM', 'HBVJBIN', 'HBVJCGM', 'HBVJCGN', 'HBVJCHM', 'HBVJCHN', 'HBVJCIM', 'HBVJCIN', 'HBVKAGM', 'HBVKAGN', 'HBVKAHM', 'HBVKAHN', 'HBVKAIM', 'HBVKAIN', 'HBVKBGM', 'HBVKBGN', 'HBVKBHM', 'HBVKBHN', 'HBVKBIM', 'HBVKBIN', 'HBVKCGM', 'HBVKCGN', 'HBVKCHM', 'HBVKCHN', 'HBVKCIM', 'HBVKCIN', 'HBVLAGM', 'HBVLAGN', 'HBVLAHM', 'HBVLAHN', 'HBVLAIM', 'HBVLAIN', 'HBVLBGM', 'HBVLBGN', 'HBVLBHM', 'HBVLBHN', 'HBVLBIM', 'HBVLBIN', 'HBVLCGM', 'HBVLCGN', 'HBVLCHM', 'HBVLCHN', 'HBVLCIM', 'HBVLCIN', 'HCTJAGM', 'HCTJAGN', 'HCTJAHM', 'HCTJAHN', 'HCTJAIM', 'HCTJAIN', 'HCTJBGM', 'HCTJBGN', 'HCTJBHM', 'HCTJBHN', 'HCTJBIM', 'HCTJBIN', 'HCTJCGM', 'HCTJCGN', 'HCTJCHM', 'HCTJCHN', 'HCTJCIM', 'HCTJCIN', 'HCTKAGM', 'HCTKAGN', 'HCTKAHM', 'HCTKAHN', 'HCTKAIM', 'HCTKAIN', 'HCTKBGM', 'HCTKBGN', 'HCTKBHM', 'HCTKBHN', 'HCTKBIM', 'HCTKBIN', 'HCTKCGM', 'HCTKCGN', 'HCTKCHM', 'HCTKCHN', 'HCTKCIM', 'HCTKCIN', 'HCTLAGM', 'HCTLAGN', 'HCTLAHM', 'HCTLAHN', 'HCTLAIM', 'HCTLAIN', 'HCTLBGM', 'HCTLBGN', 'HCTLBHM', 'HCTLBHN', 'HCTLBIM', 'HCTLBIN', 'HCTLCGM', 'HCTLCGN', 'HCTLCHM', 'HCTLCHN', 'HCTLCIM', 'HCTLCIN', 'HCUJAGM', 'HCUJAGN', 'HCUJAHM', 'HCUJAHN', 'HCUJAIM', 'HCUJAIN', 'HCUJBGM', 'HCUJBGN', 'HCUJBHM', 'HCUJBHN', 'HCUJBIM', 'HCUJBIN', 'HCUJCGM', 'HCUJCGN', 'HCUJCHM', 'HCUJCHN', 'HCUJCIM', 'HCUJCIN', 'HCUKAGM', 'HCUKAGN', 'HCUKAHM', 'HCUKAHN', 'HCUKAIM', 'HCUKAIN', 'HCUKBGM', 'HCUKBGN', 'HCUKBHM', 'HCUKBHN', 'HCUKBIM', 'HCUKBIN', 'HCUKCGM', 'HCUKCGN', 'HCUKCHM', 'HCUKCHN', 'HCUKCIM', 'HCUKCIN', 'HCULAGM', 'HCULAGN', 'HCULAHM', 'HCULAHN', 'HCULAIM', 'HCULAIN', 'HCULBGM', 'HCULBGN', 'HCULBHM', 'HCULBHN', 'HCULBIM', 'HCULBIN', 'HCULCGM', 'HCULCGN', 'HCULCHM', 'HCULCHN', 'HCULCIM', 'HCULCIN', 'HCVJAGM', 'HCVJAGN', 'HCVJAHM', 'HCVJAHN', 'HCVJAIM', 'HCVJAIN', 'HCVJBGM', 'HCVJBGN', 'HCVJBHM', 'HCVJBHN', 'HCVJBIM', 'HCVJBIN', 'HCVJCGM', 'HCVJCGN', 'HCVJCHM', 'HCVJCHN', 'HCVJCIM', 'HCVJCIN', 'HCVKAGM', 'HCVKAGN', 'HCVKAHM', 'HCVKAHN', 'HCVKAIM', 'HCVKAIN', 'HCVKBGM', 'HCVKBGN', 'HCVKBHM', 'HCVKBHN', 'HCVKBIM', 'HCVKBIN', 'HCVKCGM', 'HCVKCGN', 'HCVKCHM', 'HCVKCHN', 'HCVKCIM', 'HCVKCIN', 'HCVLAGM', 'HCVLAGN', 'HCVLAHM', 'HCVLAHN', 'HCVLAIM', 'HCVLAIN', 'HCVLBGM', 'HCVLBGN', 'HCVLBHM', 'HCVLBHN', 'HCVLBIM', 'HCVLBIN', 'HCVLCGM', 'HCVLCGN', 'HCVLCHM', 'HCVLCHN', 'HCVLCIM', 'HCVLCIN', 'IATJAGM', 'IATJAGN', 'IATJAHM', 'IATJAHN', 'IATJAIM', 'IATJAIN', 'IATJBGM', 'IATJBGN', 'IATJBHM', 'IATJBHN', 'IATJBIM', 'IATJBIN', 'IATJCGM', 'IATJCGN', 'IATJCHM', 'IATJCHN', 'IATJCIM', 'IATJCIN', 'IATKAGM', 'IATKAGN', 'IATKAHM', 'IATKAHN', 'IATKAIM', 'IATKAIN', 'IATKBGM', 'IATKBGN', 'IATKBHM', 'IATKBHN', 'IATKBIM', 'IATKBIN', 'IATKCGM', 'IATKCGN', 'IATKCHM', 'IATKCHN', 'IATKCIM', 'IATKCIN', 'IATLAGM', 'IATLAGN', 'IATLAHM', 'IATLAHN', 'IATLAIM', 'IATLAIN', 'IATLBGM', 'IATLBGN', 'IATLBHM', 'IATLBHN', 'IATLBIM', 'IATLBIN', 'IATLCGM', 'IATLCGN', 'IATLCHM', 'IATLCHN', 'IATLCIM', 'IATLCIN', 'IAUJAGM', 'IAUJAGN', 'IAUJAHM', 'IAUJAHN', 'IAUJAIM', 'IAUJAIN', 'IAUJBGM', 'IAUJBGN', 'IAUJBHM', 'IAUJBHN', 'IAUJBIM', 'IAUJBIN', 'IAUJCGM', 'IAUJCGN', 'IAUJCHM', 'IAUJCHN', 'IAUJCIM', 'IAUJCIN', 'IAUKAGM', 'IAUKAGN', 'IAUKAHM', 'IAUKAHN', 'IAUKAIM', 'IAUKAIN', 'IAUKBGM', 'IAUKBGN', 'IAUKBHM', 'IAUKBHN', 'IAUKBIM', 'IAUKBIN', 'IAUKCGM', 'IAUKCGN', 'IAUKCHM', 'IAUKCHN', 'IAUKCIM', 'IAUKCIN', 'IAULAGM', 'IAULAGN', 'IAULAHM', 'IAULAHN', 'IAULAIM', 'IAULAIN', 'IAULBGM', 'IAULBGN', 'IAULBHM', 'IAULBHN', 'IAULBIM', 'IAULBIN', 'IAULCGM', 'IAULCGN', 'IAULCHM', 'IAULCHN', 'IAULCIM', 'IAULCIN', 'IAVJAGM', 'IAVJAGN', 'IAVJAHM', 'IAVJAHN', 'IAVJAIM', 'IAVJAIN', 'IAVJBGM', 'IAVJBGN', 'IAVJBHM', 'IAVJBHN', 'IAVJBIM', 'IAVJBIN', 'IAVJCGM', 'IAVJCGN', 'IAVJCHM', 'IAVJCHN', 'IAVJCIM', 'IAVJCIN', 'IAVKAGM', 'IAVKAGN', 'IAVKAHM', 'IAVKAHN', 'IAVKAIM', 'IAVKAIN', 'IAVKBGM', 'IAVKBGN', 'IAVKBHM', 'IAVKBHN', 'IAVKBIM', 'IAVKBIN', 'IAVKCGM', 'IAVKCGN', 'IAVKCHM', 'IAVKCHN', 'IAVKCIM', 'IAVKCIN', 'IAVLAGM', 'IAVLAGN', 'IAVLAHM', 'IAVLAHN', 'IAVLAIM', 'IAVLAIN', 'IAVLBGM', 'IAVLBGN', 'IAVLBHM', 'IAVLBHN', 'IAVLBIM', 'IAVLBIN', 'IAVLCGM', 'IAVLCGN', 'IAVLCHM', 'IAVLCHN', 'IAVLCIM', 'IAVLCIN', 'IBTJAGM', 'IBTJAGN', 'IBTJAHM', 'IBTJAHN', 'IBTJAIM', 'IBTJAIN', 'IBTJBGM', 'IBTJBGN', 'IBTJBHM', 'IBTJBHN', 'IBTJBIM', 'IBTJBIN', 'IBTJCGM', 'IBTJCGN', 'IBTJCHM', 'IBTJCHN', 'IBTJCIM', 'IBTJCIN', 'IBTKAGM', 'IBTKAGN', 'IBTKAHM', 'IBTKAHN', 'IBTKAIM', 'IBTKAIN', 'IBTKBGM', 'IBTKBGN', 'IBTKBHM', 'IBTKBHN', 'IBTKBIM', 'IBTKBIN', 'IBTKCGM', 'IBTKCGN', 'IBTKCHM', 'IBTKCHN', 'IBTKCIM', 'IBTKCIN', 'IBTLAGM', 'IBTLAGN', 'IBTLAHM', 'IBTLAHN', 'IBTLAIM', 'IBTLAIN', 'IBTLBGM', 'IBTLBGN', 'IBTLBHM', 'IBTLBHN', 'IBTLBIM', 'IBTLBIN', 'IBTLCGM', 'IBTLCGN', 'IBTLCHM', 'IBTLCHN', 'IBTLCIM', 'IBTLCIN', 'IBUJAGM', 'IBUJAGN', 'IBUJAHM', 'IBUJAHN', 'IBUJAIM', 'IBUJAIN', 'IBUJBGM', 'IBUJBGN', 'IBUJBHM', 'IBUJBHN', 'IBUJBIM', 'IBUJBIN', 'IBUJCGM', 'IBUJCGN', 'IBUJCHM', 'IBUJCHN', 'IBUJCIM', 'IBUJCIN', 'IBUKAGM', 'IBUKAGN', 'IBUKAHM', 'IBUKAHN', 'IBUKAIM', 'IBUKAIN', 'IBUKBGM', 'IBUKBGN', 'IBUKBHM', 'IBUKBHN', 'IBUKBIM', 'IBUKBIN', 'IBUKCGM', 'IBUKCGN', 'IBUKCHM', 'IBUKCHN', 'IBUKCIM', 'IBUKCIN', 'IBULAGM', 'IBULAGN', 'IBULAHM', 'IBULAHN', 'IBULAIM', 'IBULAIN', 'IBULBGM', 'IBULBGN', 'IBULBHM', 'IBULBHN', 'IBULBIM', 'IBULBIN', 'IBULCGM', 'IBULCGN', 'IBULCHM', 'IBULCHN', 'IBULCIM', 'IBULCIN', 'IBVJAGM', 'IBVJAGN', 'IBVJAHM', 'IBVJAHN', 'IBVJAIM', 'IBVJAIN', 'IBVJBGM', 'IBVJBGN', 'IBVJBHM', 'IBVJBHN', 'IBVJBIM', 'IBVJBIN', 'IBVJCGM', 'IBVJCGN', 'IBVJCHM', 'IBVJCHN', 'IBVJCIM', 'IBVJCIN', 'IBVKAGM', 'IBVKAGN', 'IBVKAHM', 'IBVKAHN', 'IBVKAIM', 'IBVKAIN', 'IBVKBGM', 'IBVKBGN', 'IBVKBHM', 'IBVKBHN', 'IBVKBIM', 'IBVKBIN', 'IBVKCGM', 'IBVKCGN', 'IBVKCHM', 'IBVKCHN', 'IBVKCIM', 'IBVKCIN', 'IBVLAGM', 'IBVLAGN', 'IBVLAHM', 'IBVLAHN', 'IBVLAIM', 'IBVLAIN', 'IBVLBGM', 'IBVLBGN', 'IBVLBHM', 'IBVLBHN', 'IBVLBIM', 'IBVLBIN', 'IBVLCGM', 'IBVLCGN', 'IBVLCHM', 'IBVLCHN', 'IBVLCIM', 'IBVLCIN', 'ICTJAGM', 'ICTJAGN', 'ICTJAHM', 'ICTJAHN', 'ICTJAIM', 'ICTJAIN', 'ICTJBGM', 'ICTJBGN', 'ICTJBHM', 'ICTJBHN', 'ICTJBIM', 'ICTJBIN', 'ICTJCGM', 'ICTJCGN', 'ICTJCHM', 'ICTJCHN', 'ICTJCIM', 'ICTJCIN', 'ICTKAGM', 'ICTKAGN', 'ICTKAHM', 'ICTKAHN', 'ICTKAIM', 'ICTKAIN', 'ICTKBGM', 'ICTKBGN', 'ICTKBHM', 'ICTKBHN', 'ICTKBIM', 'ICTKBIN', 'ICTKCGM', 'ICTKCGN', 'ICTKCHM', 'ICTKCHN', 'ICTKCIM', 'ICTKCIN', 'ICTLAGM', 'ICTLAGN', 'ICTLAHM', 'ICTLAHN', 'ICTLAIM', 'ICTLAIN', 'ICTLBGM', 'ICTLBGN', 'ICTLBHM', 'ICTLBHN', 'ICTLBIM', 'ICTLBIN', 'ICTLCGM', 'ICTLCGN', 'ICTLCHM', 'ICTLCHN', 'ICTLCIM', 'ICTLCIN', 'ICUJAGM', 'ICUJAGN', 'ICUJAHM', 'ICUJAHN', 'ICUJAIM', 'ICUJAIN', 'ICUJBGM', 'ICUJBGN', 'ICUJBHM', 'ICUJBHN', 'ICUJBIM', 'ICUJBIN', 'ICUJCGM', 'ICUJCGN', 'ICUJCHM', 'ICUJCHN', 'ICUJCIM', 'ICUJCIN', 'ICUKAGM', 'ICUKAGN', 'ICUKAHM', 'ICUKAHN', 'ICUKAIM', 'ICUKAIN', 'ICUKBGM', 'ICUKBGN', 'ICUKBHM', 'ICUKBHN', 'ICUKBIM', 'ICUKBIN', 'ICUKCGM', 'ICUKCGN', 'ICUKCHM', 'ICUKCHN', 'ICUKCIM', 'ICUKCIN', 'ICULAGM', 'ICULAGN', 'ICULAHM', 'ICULAHN', 'ICULAIM', 'ICULAIN', 'ICULBGM', 'ICULBGN', 'ICULBHM', 'ICULBHN', 'ICULBIM', 'ICULBIN', 'ICULCGM', 'ICULCGN', 'ICULCHM', 'ICULCHN', 'ICULCIM', 'ICULCIN', 'ICVJAGM', 'ICVJAGN', 'ICVJAHM', 'ICVJAHN', 'ICVJAIM', 'ICVJAIN', 'ICVJBGM', 'ICVJBGN', 'ICVJBHM', 'ICVJBHN', 'ICVJBIM', 'ICVJBIN', 'ICVJCGM', 'ICVJCGN', 'ICVJCHM', 'ICVJCHN', 'ICVJCIM', 'ICVJCIN', 'ICVKAGM', 'ICVKAGN', 'ICVKAHM', 'ICVKAHN', 'ICVKAIM', 'ICVKAIN', 'ICVKBGM', 'ICVKBGN', 'ICVKBHM', 'ICVKBHN', 'ICVKBIM', 'ICVKBIN', 'ICVKCGM', 'ICVKCGN', 'ICVKCHM', 'ICVKCHN', 'ICVKCIM', 'ICVKCIN', 'ICVLAGM', 'ICVLAGN', 'ICVLAHM', 'ICVLAHN', 'ICVLAIM', 'ICVLAIN', 'ICVLBGM', 'ICVLBGN', 'ICVLBHM', 'ICVLBHN', 'ICVLBIM', 'ICVLBIN', 'ICVLCGM', 'ICVLCGN', 'ICVLCHM', 'ICVLCHN', 'ICVLCIM', 'ICVLCIN']
    

    вы можете заметить, что я из школы 0 -> 'O', 1 -> '1'. Если это вам не нравится, измените буквальное значение по своему вкусу.

    03.06.2010
  • Прекрасное использование reduce. +1 :) 04.06.2010
  • Хе-хе - большие пальцы здесь тебе в этом не помогут ..: p 04.06.2010
  • Голоса сообщества вики не засчитываются при подсчете очков. Извините, вам придется проявить (дополнительный) блеск на другой арене. 04.06.2010
  • Но это засчитывается к медали за хороший ответ :) 04.06.2010

  • 3

    Mathematica, 87 символов

    Бонусный трек ниже в версии 3 (Генерация допустимых английских слов)

    Эта версия включает в себя правила Q, дефиса и пробела, которые перечислены в настоящее время.

    #<>""&/@Tuples@Join[{{"-"},{" "}},"A"~CharacterRange~"Y"~Drop~{17}~Partition~3][[#+1]]&
    

    Математика: 98 символов

     k[x_]:=Tuples[Table[Union[{{"-"},{1}},
               Partition[CharacterRange["A","Y"],3]][[(x+1)[[i]]]],{i,1,7}]]
    

    Обратите внимание на длинные имена

    использование

         k[{4,2,8,5,2,4,6}]
    

    Редактировать>

    Он выводит только уникальные случаи. Чтобы подсчитать уникальные последовательности:

         Length[k[{4,2,8,5,2,4,6}]]
    

    Редактировать

    Версия 2: 96 символов

     k[x_]:=Tuples[Table[Union[{{"-"},{1}},
               Partition[CharacterRange["A","Y"],3]][[(x+1)[[i]]]],{i,1}]]
    


    Версия 3: бонусный трек - создание правильных английских слов



    Я решил, что система Mathematica очень мощная, но слишком многословная для соревнований по стенографии. В любом случае, прежде чем поклониться и выйти из «конкурса», я хочу показать еще одну функцию, просто для развлечения и для проверки, присуждаются ли дополнительные баллы за утверждение «за распознавание вывода как настоящие английские слова. Хорошо, не совсем.; -) " было правдой или нет.

    Код такой:

    d[x_] := Join @@ (DictionaryLookup[# <> ""] & /@ 
        Tuples@Join[{{"-"}, {" "}}, 
           "a"~CharacterRange~"y"~Drop~{17}~Partition~3][[x + 1]])
    

    При звонке с

    d[{7, 2, 3, 4, 7, 8, 4, 2}] 
    

    Результат

    {"sadistic"}  
    

    При звонке с

    d[{2,6,8,2,4}]  
    

    Результат

    {"botch", "couch"}
    

    И когда позвонили с

    d[{3, 2, 4, 5}]
    

    Результат

    {"fail"}
    

    Красиво, не правда ли?

    06.06.2010

    4

    J, 60 62 65 67 символов

    ~.('---   ','Q'(~:#])25{.65|.a.){~((7$3)#:i.3^7)+"1]3*"."0":
    

    Использует модифицированную североамериканскую классическую клавиатуру Ника.

       ~.('---   ','Q'(~:#])25{.65|.a.){~((7$3)#:i.3^7)+"1]3*"."0":4285246
    ...
    ICTJCHM
    ICTJCHN
    ICTJCHO
    ICTJCIM
    ICTJCIN
    ICTJCIO
    ICTKAGM
    ICTKAGN
    ICTKAGO
    ICTKAHM
    ICTKAHN
    ICTKAHO
    ICTKAIM
    ICTKAIN
    ICTKAIO
    ICTKBGM
    ICTKBGN
    ICTKBGO
    ICTKBHM
    ICTKBHN
    ICTKBHO
    ICTKBIM
    ICTKBIN
    ICTKBIO
    ICTKCGM
    ICTKCGN
    ICTKCGO
    ICTKCHM
    ICTKCHN
    ICTKCHO
    ICTKCIM
    ICTKCIN
    ICTKCIO
    ICTLAGM
    ICTLAGN
    ICTLAGO
    ICTLAHM
    ICTLAHN
    ICTLAHO
    ICTLAIM
    ICTLAIN
    ICTLAIO
    ICTLBGM
    ICTLBGN
    ICTLBGO
    ICTLBHM
    ICTLBHN
    ICTLBHO
    ICTLBIM
    ICTLBIN
    ICTLBIO
    ICTLCGM
    ICTLCGN
    ICTLCGO
    ICTLCHM
    ICTLCHN
    ICTLCHO
    ICTLCIM
    ICTLCIN
    ICTLCIO
    ICUJAGM
    ICUJAGN
    ICUJAGO
    ICUJAHM
    ICUJAHN
    ICUJAHO
    ICUJAIM
    ICUJAIN
    ICUJAIO
    ICUJBGM
    ICUJBGN
    ICUJBGO
    ICUJBHM
    ICUJBHN
    ICUJBHO
    ICUJBIM
    ICUJBIN
    ICUJBIO
    ICUJCGM
    ICUJCGN
    ICUJCGO
    ICUJCHM
    ICUJCHN
    ICUJCHO
    ICUJCIM
    ICUJCIN
    ICUJCIO
    ICUKAGM
    ICUKAGN
    ICUKAGO
    ICUKAHM
    ICUKAHN
    ICUKAHO
    ICUKAIM
    ICUKAIN
    ICUKAIO
    ICUKBGM
    ICUKBGN
    ICUKBGO
    ICUKBHM
    ICUKBHN
    ICUKBHO
    ICUKBIM
    ICUKBIN
    ICUKBIO
    ICUKCGM
    ICUKCGN
    ICUKCGO
    ICUKCHM
    ICUKCHN
    ICUKCHO
    ICUKCIM
    ICUKCIN
    ICUKCIO
    ICULAGM
    ICULAGN
    ICULAGO
    ICULAHM
    ICULAHN
    ICULAHO
    ICULAIM
    ICULAIN
    ICULAIO
    ICULBGM
    ICULBGN
    ICULBGO
    ICULBHM
    ICULBHN
    ICULBHO
    ICULBIM
    ICULBIN
    ICULBIO
    ICULCGM
    ICULCGN
    ICULCGO
    ICULCHM
    ICULCHN
    ICULCHO
    ICULCIM
    ICULCIN
    ICULCIO
    ICVJAGM
    ICVJAGN
    ICVJAGO
    ICVJAHM
    ICVJAHN
    ICVJAHO
    ICVJAIM
    ICVJAIN
    ICVJAIO
    ICVJBGM
    ICVJBGN
    ICVJBGO
    ICVJBHM
    ICVJBHN
    ICVJBHO
    ICVJBIM
    ICVJBIN
    ICVJBIO
    ICVJCGM
    ICVJCGN
    ICVJCGO
    ICVJCHM
    ICVJCHN
    ICVJCHO
    ICVJCIM
    ICVJCIN
    ICVJCIO
    ICVKAGM
    ICVKAGN
    ICVKAGO
    ICVKAHM
    ICVKAHN
    ICVKAHO
    ICVKAIM
    ICVKAIN
    ICVKAIO
    ICVKBGM
    ICVKBGN
    ICVKBGO
    ICVKBHM
    ICVKBHN
    ICVKBHO
    ICVKBIM
    ICVKBIN
    ICVKBIO
    ICVKCGM
    ICVKCGN
    ICVKCGO
    ICVKCHM
    ICVKCHN
    ICVKCHO
    ICVKCIM
    ICVKCIN
    ICVKCIO
    ICVLAGM
    ICVLAGN
    ICVLAGO
    ICVLAHM
    ICVLAHN
    ICVLAHO
    ICVLAIM
    ICVLAIN
    ICVLAIO
    ICVLBGM
    ICVLBGN
    ICVLBGO
    ICVLBHM
    ICVLBHN
    ICVLBHO
    ICVLBIM
    ICVLBIN
    ICVLBIO
    ICVLCGM
    ICVLCGN
    ICVLCGO
    ICVLCHM
    ICVLCHN
    ICVLCHO
    ICVLCIM
    ICVLCIN
    ICVLCIO
    
    03.06.2010
  • На клавиатуре North American Classic нет буквы «О»; 6 - это просто «MN». 04.06.2010
  • Но в приведенном примере явно используется «О». Я подожду разъяснений, прежде чем делать правку. 04.06.2010
  • Посмотрев на спецификацию, моя не соответствовала ни одной из клавиатур. Обновлено для соответствия североамериканской классике. 04.06.2010

  • 5

    Haskell:


    Просто чистая функция (69 78 символов) ::

    f=mapM(\x->("-":" ":words"ABC DEF GHI JKL MNO PRS TUV WXY")!!read[x])
    

    Использование:

    Prelude> f "626"
    ["MAM","MAN","MAO","MBM","MBN","MBO","MCM","MCN","MCO","NAM","NAN","NAO","NBM","NBN","NBO","NCM","NCN","NCO","OAM","OAN","OAO","OBM","OBN","OBO","OCM","OCN","OCO"]
    

    В виде полной программы (93 102 символа):

    main=getLine>>=mapM print.mapM(\x->("-":" ":words"ABC DEF GHI JKL MNO PRS TUV WXY")!!read[x])
    

    Использование:

    ~$ ./a.out
    626
    "MAM"
    "MAN"
    "MAO"
    "MBM"
    "MBN"
    "MBO"
    "MCM"
    "MCN"
    "MCO"
    "NAM"
    "NAN"
    "NAO"
    "NBM"
    "NBN"
    "NBO"
    "NCM"
    "NCN"
    "NCO"
    "OAM"
    "OAN"
    "OAO"
    "OBM"
    "OBN"
    "OBO"
    "OCM"
    "OCN"
    "OCO"
    

    Замените [...,"PRS","TUV","WXY"] на [...,"PQRS","TUV","WXYZ"], чтобы получить международную клавиатуру, +2 символа.

    Замените print на putStrLn, чтобы удалить кавычки в выводе, +3 символа.

    Новые строки и пробелы между символом и словами добавляются только для удаления горизонтальной полосы прокрутки.

    03.06.2010

    6

    Perl, 101 символ:

    Это злоупотребляет оператором glob <{a,b,c}{d,e,f}> для вычисления декартова произведения:

    $,=$/;print eval"<{".(join"}{",map{s/\B/,/g;$_}           # wrapped to fit
    map{(0,1,join("",A..Z)=~/...S?Z?/g)[$_]}pop=~/./g)."}>" 
    

    как программа (111 символов):

    perl -e'$,=$/;print eval"<{".(join"}{",map{s/\B/,/g;$_}map{(0,1,join("",A..Z)=~/...S?Z?/g)[$_]}pop=~/./g)."}>"' 4285246
    

    Изменить: включены предложения мобрула

    04.06.2010
  • Ура за злоупотребление оператором glob! 05.06.2010
  • Измените "\n" на $/, shift на pop, чтобы сохранить 4 символа. 05.06.2010

  • 7

    Python, 157 139 119 символов:

    Вкладки и символы новой строки засчитываются ...;)
    Теперь используется "Модифицированная клавиатура Ника"

    def p(a,b=''):
     if a:[p(a[1:],b+c)for c in '-, ,ABC,DEF,GHI,JKL,MNO,PRS,TUV,WXY'.split(',')[int(a[0])]];return
     print b
    

    Использование: (+ 12c)

    p('4285246')
    
    03.06.2010
  • лучше установить значение по умолчанию для b, def p (a, b = ''), чтобы его можно было назвать с 1 аргументом 04.06.2010
  • Да, я тоже об этом думал; работает одинаково в любом случае в char-count - ='' в def или ,'') в вызове. Все-таки, думаю, в определении чище - обновлено. 04.06.2010
  • for c in"-| |ABC|DEF|GHI|JKL|MN|PRS|TUV|WXY".split("|"): следует сохранить несколько символов 04.06.2010
  • можно выделить больше, например, str (c) не требуется, c уже является str. вызов p () может идти в той же строке с for. not a короче a is '' и т. Д. (Извините, я не могу редактировать вики, недостаточно рейтинга) 04.06.2010
  • @gnibbler. Не забывайте, что str.split определяется как str.split([sep=" "[,maxsplit]). Поэтому используйте пробелы в качестве разделителей, чтобы сохранить еще 3 символа. 04.06.2010
  • Хорошие советы! :) Обновился. @EnTerr - хорошая уловка ложного звонка str(), я не совсем понимаю, о чем я думал. Слишком мало, наверное: D 04.06.2010
  • Что ж, вы все равно можете сохранить 3 символа, вставив l. И вы можете удалить not, поместив вместо этого цикл for + return внутри оператора if. 04.06.2010
  • @wallacoloo - хорошие идеи; пришлось поместить for в список-comp, иначе это не разрешено в той же строке, что и if (что тратит его впустую, так как вы должны вставить один разрыв строки и два отступа). 04.06.2010

  • 8

    Рубин, 109 символов

    l=%w{- \  ABC DEF GHI JKL MN PRS TUV WXY};p$_.chars.map{|d|[*l[d.to_i].chars]}.reduce(&:product).map{|x|x*""}
    

    Использование:

    echo "2345678" | ruby -lne 'l=%w{- \  ABC DEF GHI JKL MN PRS TUV WXY};p$_.chars.map{|d|[*l[d.to_i].chars]}.reduce(&:product).map{|x|x*""}'
    

    Результат для «2345678» - длина 1458

    ADGJMPT
    ADGJMPU
    ADGJMPV
    ADGJMRT
    ADGJMRU
    ADGJMRV
    ADGJMST
    ADGJMSU
    ADGJMSV
    ADGJNPT
    ADGJNPU
    ADGJNPV
    ADGJNRT
    ADGJNRU
    ADGJNRV
    ADGJNST
    ADGJNSU
    ADGJNSV
    ADGKMPT
    ADGKMPU
    ADGKMPV
    ADGKMRT
    ADGKMRU
    ADGKMRV
    ADGKMST
    ADGKMSU
    ADGKMSV
    ADGKNPT
    ADGKNPU
    ADGKNPV
    ADGKNRT
    ADGKNRU
    ADGKNRV
    ADGKNST
    ADGKNSU
    ADGKNSV
    ADGLMPT
    ADGLMPU
    ADGLMPV
    ADGLMRT
    ADGLMRU
    ADGLMRV
    ADGLMST
    ADGLMSU
    ADGLMSV
    ADGLNPT
    ADGLNPU
    ADGLNPV
    ADGLNRT
    ADGLNRU
    ADGLNRV
    ADGLNST
    ADGLNSU
    ADGLNSV
    ADHJMPT
    ADHJMPU
    ADHJMPV
    ADHJMRT
    ADHJMRU
    ADHJMRV
    ADHJMST
    ADHJMSU
    ADHJMSV
    ADHJNPT
    ADHJNPU
    ADHJNPV
    ADHJNRT
    ADHJNRU
    ADHJNRV
    ADHJNST
    ADHJNSU
    ADHJNSV
    ADHKMPT
    ADHKMPU
    ADHKMPV
    ADHKMRT
    ADHKMRU
    ADHKMRV
    ADHKMST
    ADHKMSU
    ADHKMSV
    ADHKNPT
    ADHKNPU
    ADHKNPV
    ADHKNRT
    ADHKNRU
    ADHKNRV
    ADHKNST
    ADHKNSU
    ADHKNSV
    ADHLMPT
    ADHLMPU
    ADHLMPV
    ADHLMRT
    ADHLMRU
    ADHLMRV
    ADHLMST
    ADHLMSU
    ADHLMSV
    ADHLNPT
    ADHLNPU
    ADHLNPV
    ADHLNRT
    ADHLNRU
    ADHLNRV
    ADHLNST
    ADHLNSU
    ADHLNSV
    ADIJMPT
    ADIJMPU
    ADIJMPV
    ADIJMRT
    ADIJMRU
    ADIJMRV
    ADIJMST
    ADIJMSU
    ADIJMSV
    ADIJNPT
    ADIJNPU
    ADIJNPV
    ADIJNRT
    ADIJNRU
    ADIJNRV
    ADIJNST
    ADIJNSU
    ADIJNSV
    ADIKMPT
    ADIKMPU
    ADIKMPV
    ADIKMRT
    ADIKMRU
    ADIKMRV
    ADIKMST
    ADIKMSU
    ADIKMSV
    ADIKNPT
    ADIKNPU
    ADIKNPV
    ADIKNRT
    ADIKNRU
    ADIKNRV
    ADIKNST
    ADIKNSU
    ADIKNSV
    ADILMPT
    ADILMPU
    ADILMPV
    ADILMRT
    ADILMRU
    ADILMRV
    ADILMST
    ADILMSU
    ADILMSV
    ADILNPT
    ADILNPU
    ADILNPV
    ADILNRT
    ADILNRU
    ADILNRV
    ADILNST
    ADILNSU
    ADILNSV
    AEGJMPT
    AEGJMPU
    AEGJMPV
    AEGJMRT
    AEGJMRU
    AEGJMRV
    AEGJMST
    AEGJMSU
    AEGJMSV
    AEGJNPT
    AEGJNPU
    AEGJNPV
    AEGJNRT
    AEGJNRU
    AEGJNRV
    AEGJNST
    AEGJNSU
    AEGJNSV
    AEGKMPT
    AEGKMPU
    AEGKMPV
    AEGKMRT
    AEGKMRU
    AEGKMRV
    AEGKMST
    AEGKMSU
    AEGKMSV
    AEGKNPT
    AEGKNPU
    AEGKNPV
    AEGKNRT
    AEGKNRU
    AEGKNRV
    AEGKNST
    AEGKNSU
    AEGKNSV
    AEGLMPT
    AEGLMPU
    AEGLMPV
    AEGLMRT
    AEGLMRU
    AEGLMRV
    AEGLMST
    AEGLMSU
    AEGLMSV
    AEGLNPT
    AEGLNPU
    AEGLNPV
    AEGLNRT
    AEGLNRU
    AEGLNRV
    AEGLNST
    AEGLNSU
    AEGLNSV
    AEHJMPT
    AEHJMPU
    AEHJMPV
    AEHJMRT
    AEHJMRU
    AEHJMRV
    AEHJMST
    AEHJMSU
    AEHJMSV
    AEHJNPT
    AEHJNPU
    AEHJNPV
    AEHJNRT
    AEHJNRU
    AEHJNRV
    AEHJNST
    AEHJNSU
    AEHJNSV
    AEHKMPT
    AEHKMPU
    AEHKMPV
    AEHKMRT
    AEHKMRU
    AEHKMRV
    AEHKMST
    AEHKMSU
    AEHKMSV
    AEHKNPT
    AEHKNPU
    AEHKNPV
    AEHKNRT
    AEHKNRU
    AEHKNRV
    AEHKNST
    AEHKNSU
    AEHKNSV
    AEHLMPT
    AEHLMPU
    AEHLMPV
    AEHLMRT
    AEHLMRU
    AEHLMRV
    AEHLMST
    AEHLMSU
    AEHLMSV
    AEHLNPT
    AEHLNPU
    AEHLNPV
    AEHLNRT
    AEHLNRU
    AEHLNRV
    AEHLNST
    AEHLNSU
    AEHLNSV
    AEIJMPT
    AEIJMPU
    AEIJMPV
    AEIJMRT
    AEIJMRU
    AEIJMRV
    AEIJMST
    AEIJMSU
    AEIJMSV
    AEIJNPT
    AEIJNPU
    AEIJNPV
    AEIJNRT
    AEIJNRU
    AEIJNRV
    AEIJNST
    AEIJNSU
    AEIJNSV
    AEIKMPT
    AEIKMPU
    AEIKMPV
    AEIKMRT
    AEIKMRU
    AEIKMRV
    AEIKMST
    AEIKMSU
    AEIKMSV
    AEIKNPT
    AEIKNPU
    AEIKNPV
    AEIKNRT
    AEIKNRU
    AEIKNRV
    AEIKNST
    AEIKNSU
    AEIKNSV
    AEILMPT
    AEILMPU
    AEILMPV
    AEILMRT
    AEILMRU
    AEILMRV
    AEILMST
    AEILMSU
    AEILMSV
    AEILNPT
    AEILNPU
    AEILNPV
    AEILNRT
    AEILNRU
    AEILNRV
    AEILNST
    AEILNSU
    AEILNSV
    AFGJMPT
    AFGJMPU
    AFGJMPV
    AFGJMRT
    AFGJMRU
    AFGJMRV
    AFGJMST
    AFGJMSU
    AFGJMSV
    AFGJNPT
    AFGJNPU
    AFGJNPV
    AFGJNRT
    AFGJNRU
    AFGJNRV
    AFGJNST
    AFGJNSU
    AFGJNSV
    AFGKMPT
    AFGKMPU
    AFGKMPV
    AFGKMRT
    AFGKMRU
    AFGKMRV
    AFGKMST
    AFGKMSU
    AFGKMSV
    AFGKNPT
    AFGKNPU
    AFGKNPV
    AFGKNRT
    AFGKNRU
    AFGKNRV
    AFGKNST
    AFGKNSU
    AFGKNSV
    AFGLMPT
    AFGLMPU
    AFGLMPV
    AFGLMRT
    AFGLMRU
    AFGLMRV
    AFGLMST
    AFGLMSU
    AFGLMSV
    AFGLNPT
    AFGLNPU
    AFGLNPV
    AFGLNRT
    AFGLNRU
    AFGLNRV
    AFGLNST
    AFGLNSU
    AFGLNSV
    AFHJMPT
    AFHJMPU
    AFHJMPV
    AFHJMRT
    AFHJMRU
    AFHJMRV
    AFHJMST
    AFHJMSU
    AFHJMSV
    AFHJNPT
    AFHJNPU
    AFHJNPV
    AFHJNRT
    AFHJNRU
    AFHJNRV
    AFHJNST
    AFHJNSU
    AFHJNSV
    AFHKMPT
    AFHKMPU
    AFHKMPV
    AFHKMRT
    AFHKMRU
    AFHKMRV
    AFHKMST
    AFHKMSU
    AFHKMSV
    AFHKNPT
    AFHKNPU
    AFHKNPV
    AFHKNRT
    AFHKNRU
    AFHKNRV
    AFHKNST
    AFHKNSU
    AFHKNSV
    AFHLMPT
    AFHLMPU
    AFHLMPV
    AFHLMRT
    AFHLMRU
    AFHLMRV
    AFHLMST
    AFHLMSU
    AFHLMSV
    AFHLNPT
    AFHLNPU
    AFHLNPV
    AFHLNRT
    AFHLNRU
    AFHLNRV
    AFHLNST
    AFHLNSU
    AFHLNSV
    AFIJMPT
    AFIJMPU
    AFIJMPV
    AFIJMRT
    AFIJMRU
    AFIJMRV
    AFIJMST
    AFIJMSU
    AFIJMSV
    AFIJNPT
    AFIJNPU
    AFIJNPV
    AFIJNRT
    AFIJNRU
    AFIJNRV
    AFIJNST
    AFIJNSU
    AFIJNSV
    AFIKMPT
    AFIKMPU
    AFIKMPV
    AFIKMRT
    AFIKMRU
    AFIKMRV
    AFIKMST
    AFIKMSU
    AFIKMSV
    AFIKNPT
    AFIKNPU
    AFIKNPV
    AFIKNRT
    AFIKNRU
    AFIKNRV
    AFIKNST
    AFIKNSU
    AFIKNSV
    AFILMPT
    AFILMPU
    AFILMPV
    AFILMRT
    AFILMRU
    AFILMRV
    AFILMST
    AFILMSU
    AFILMSV
    AFILNPT
    AFILNPU
    AFILNPV
    AFILNRT
    AFILNRU
    AFILNRV
    AFILNST
    AFILNSU
    AFILNSV
    BDGJMPT
    BDGJMPU
    BDGJMPV
    BDGJMRT
    BDGJMRU
    BDGJMRV
    BDGJMST
    BDGJMSU
    BDGJMSV
    BDGJNPT
    BDGJNPU
    BDGJNPV
    BDGJNRT
    BDGJNRU
    BDGJNRV
    BDGJNST
    BDGJNSU
    BDGJNSV
    BDGKMPT
    BDGKMPU
    BDGKMPV
    BDGKMRT
    BDGKMRU
    BDGKMRV
    BDGKMST
    BDGKMSU
    BDGKMSV
    BDGKNPT
    BDGKNPU
    BDGKNPV
    BDGKNRT
    BDGKNRU
    BDGKNRV
    BDGKNST
    BDGKNSU
    BDGKNSV
    BDGLMPT
    BDGLMPU
    BDGLMPV
    BDGLMRT
    BDGLMRU
    BDGLMRV
    BDGLMST
    BDGLMSU
    BDGLMSV
    BDGLNPT
    BDGLNPU
    BDGLNPV
    BDGLNRT
    BDGLNRU
    BDGLNRV
    BDGLNST
    BDGLNSU
    BDGLNSV
    BDHJMPT
    BDHJMPU
    BDHJMPV
    BDHJMRT
    BDHJMRU
    BDHJMRV
    BDHJMST
    BDHJMSU
    BDHJMSV
    BDHJNPT
    BDHJNPU
    BDHJNPV
    BDHJNRT
    BDHJNRU
    BDHJNRV
    BDHJNST
    BDHJNSU
    BDHJNSV
    BDHKMPT
    BDHKMPU
    BDHKMPV
    BDHKMRT
    BDHKMRU
    BDHKMRV
    BDHKMST
    BDHKMSU
    BDHKMSV
    BDHKNPT
    BDHKNPU
    BDHKNPV
    BDHKNRT
    BDHKNRU
    BDHKNRV
    BDHKNST
    BDHKNSU
    BDHKNSV
    BDHLMPT
    BDHLMPU
    BDHLMPV
    BDHLMRT
    BDHLMRU
    BDHLMRV
    BDHLMST
    BDHLMSU
    BDHLMSV
    BDHLNPT
    BDHLNPU
    BDHLNPV
    BDHLNRT
    BDHLNRU
    BDHLNRV
    BDHLNST
    BDHLNSU
    BDHLNSV
    BDIJMPT
    BDIJMPU
    BDIJMPV
    BDIJMRT
    BDIJMRU
    BDIJMRV
    BDIJMST
    BDIJMSU
    BDIJMSV
    BDIJNPT
    BDIJNPU
    BDIJNPV
    BDIJNRT
    BDIJNRU
    BDIJNRV
    BDIJNST
    BDIJNSU
    BDIJNSV
    BDIKMPT
    BDIKMPU
    BDIKMPV
    BDIKMRT
    BDIKMRU
    BDIKMRV
    BDIKMST
    BDIKMSU
    BDIKMSV
    BDIKNPT
    BDIKNPU
    BDIKNPV
    BDIKNRT
    BDIKNRU
    BDIKNRV
    BDIKNST
    BDIKNSU
    BDIKNSV
    BDILMPT
    BDILMPU
    BDILMPV
    BDILMRT
    BDILMRU
    BDILMRV
    BDILMST
    BDILMSU
    BDILMSV
    BDILNPT
    BDILNPU
    BDILNPV
    BDILNRT
    BDILNRU
    BDILNRV
    BDILNST
    BDILNSU
    BDILNSV
    BEGJMPT
    BEGJMPU
    BEGJMPV
    BEGJMRT
    BEGJMRU
    BEGJMRV
    BEGJMST
    BEGJMSU
    BEGJMSV
    BEGJNPT
    BEGJNPU
    BEGJNPV
    BEGJNRT
    BEGJNRU
    BEGJNRV
    BEGJNST
    BEGJNSU
    BEGJNSV
    BEGKMPT
    BEGKMPU
    BEGKMPV
    BEGKMRT
    BEGKMRU
    BEGKMRV
    BEGKMST
    BEGKMSU
    BEGKMSV
    BEGKNPT
    BEGKNPU
    BEGKNPV
    BEGKNRT
    BEGKNRU
    BEGKNRV
    BEGKNST
    BEGKNSU
    BEGKNSV
    BEGLMPT
    BEGLMPU
    BEGLMPV
    BEGLMRT
    BEGLMRU
    BEGLMRV
    BEGLMST
    BEGLMSU
    BEGLMSV
    BEGLNPT
    BEGLNPU
    BEGLNPV
    BEGLNRT
    BEGLNRU
    BEGLNRV
    BEGLNST
    BEGLNSU
    BEGLNSV
    BEHJMPT
    BEHJMPU
    BEHJMPV
    BEHJMRT
    BEHJMRU
    BEHJMRV
    BEHJMST
    BEHJMSU
    BEHJMSV
    BEHJNPT
    BEHJNPU
    BEHJNPV
    BEHJNRT
    BEHJNRU
    BEHJNRV
    BEHJNST
    BEHJNSU
    BEHJNSV
    BEHKMPT
    BEHKMPU
    BEHKMPV
    BEHKMRT
    BEHKMRU
    BEHKMRV
    BEHKMST
    BEHKMSU
    BEHKMSV
    BEHKNPT
    BEHKNPU
    BEHKNPV
    BEHKNRT
    BEHKNRU
    BEHKNRV
    BEHKNST
    BEHKNSU
    BEHKNSV
    BEHLMPT
    BEHLMPU
    BEHLMPV
    BEHLMRT
    BEHLMRU
    BEHLMRV
    BEHLMST
    BEHLMSU
    BEHLMSV
    BEHLNPT
    BEHLNPU
    BEHLNPV
    BEHLNRT
    BEHLNRU
    BEHLNRV
    BEHLNST
    BEHLNSU
    BEHLNSV
    BEIJMPT
    BEIJMPU
    BEIJMPV
    BEIJMRT
    BEIJMRU
    BEIJMRV
    BEIJMST
    BEIJMSU
    BEIJMSV
    BEIJNPT
    BEIJNPU
    BEIJNPV
    BEIJNRT
    BEIJNRU
    BEIJNRV
    BEIJNST
    BEIJNSU
    BEIJNSV
    BEIKMPT
    BEIKMPU
    BEIKMPV
    BEIKMRT
    BEIKMRU
    BEIKMRV
    BEIKMST
    BEIKMSU
    BEIKMSV
    BEIKNPT
    BEIKNPU
    BEIKNPV
    BEIKNRT
    BEIKNRU
    BEIKNRV
    BEIKNST
    BEIKNSU
    BEIKNSV
    BEILMPT
    BEILMPU
    BEILMPV
    BEILMRT
    BEILMRU
    BEILMRV
    BEILMST
    BEILMSU
    BEILMSV
    BEILNPT
    BEILNPU
    BEILNPV
    BEILNRT
    BEILNRU
    BEILNRV
    BEILNST
    BEILNSU
    BEILNSV
    BFGJMPT
    BFGJMPU
    BFGJMPV
    BFGJMRT
    BFGJMRU
    BFGJMRV
    BFGJMST
    BFGJMSU
    BFGJMSV
    BFGJNPT
    BFGJNPU
    BFGJNPV
    BFGJNRT
    BFGJNRU
    BFGJNRV
    BFGJNST
    BFGJNSU
    BFGJNSV
    BFGKMPT
    BFGKMPU
    BFGKMPV
    BFGKMRT
    BFGKMRU
    BFGKMRV
    BFGKMST
    BFGKMSU
    BFGKMSV
    BFGKNPT
    BFGKNPU
    BFGKNPV
    BFGKNRT
    BFGKNRU
    BFGKNRV
    BFGKNST
    BFGKNSU
    BFGKNSV
    BFGLMPT
    BFGLMPU
    BFGLMPV
    BFGLMRT
    BFGLMRU
    BFGLMRV
    BFGLMST
    BFGLMSU
    BFGLMSV
    BFGLNPT
    BFGLNPU
    BFGLNPV
    BFGLNRT
    BFGLNRU
    BFGLNRV
    BFGLNST
    BFGLNSU
    BFGLNSV
    BFHJMPT
    BFHJMPU
    BFHJMPV
    BFHJMRT
    BFHJMRU
    BFHJMRV
    BFHJMST
    BFHJMSU
    BFHJMSV
    BFHJNPT
    BFHJNPU
    BFHJNPV
    BFHJNRT
    BFHJNRU
    BFHJNRV
    BFHJNST
    BFHJNSU
    BFHJNSV
    BFHKMPT
    BFHKMPU
    BFHKMPV
    BFHKMRT
    BFHKMRU
    BFHKMRV
    BFHKMST
    BFHKMSU
    BFHKMSV
    BFHKNPT
    BFHKNPU
    BFHKNPV
    BFHKNRT
    BFHKNRU
    BFHKNRV
    BFHKNST
    BFHKNSU
    BFHKNSV
    BFHLMPT
    BFHLMPU
    BFHLMPV
    BFHLMRT
    BFHLMRU
    BFHLMRV
    BFHLMST
    BFHLMSU
    BFHLMSV
    BFHLNPT
    BFHLNPU
    BFHLNPV
    BFHLNRT
    BFHLNRU
    BFHLNRV
    BFHLNST
    BFHLNSU
    BFHLNSV
    BFIJMPT
    BFIJMPU
    BFIJMPV
    BFIJMRT
    BFIJMRU
    BFIJMRV
    BFIJMST
    BFIJMSU
    BFIJMSV
    BFIJNPT
    BFIJNPU
    BFIJNPV
    BFIJNRT
    BFIJNRU
    BFIJNRV
    BFIJNST
    BFIJNSU
    BFIJNSV
    BFIKMPT
    BFIKMPU
    BFIKMPV
    BFIKMRT
    BFIKMRU
    BFIKMRV
    BFIKMST
    BFIKMSU
    BFIKMSV
    BFIKNPT
    BFIKNPU
    BFIKNPV
    BFIKNRT
    BFIKNRU
    BFIKNRV
    BFIKNST
    BFIKNSU
    BFIKNSV
    BFILMPT
    BFILMPU
    BFILMPV
    BFILMRT
    BFILMRU
    BFILMRV
    BFILMST
    BFILMSU
    BFILMSV
    BFILNPT
    BFILNPU
    BFILNPV
    BFILNRT
    BFILNRU
    BFILNRV
    BFILNST
    BFILNSU
    BFILNSV
    CDGJMPT
    CDGJMPU
    CDGJMPV
    CDGJMRT
    CDGJMRU
    CDGJMRV
    CDGJMST
    CDGJMSU
    CDGJMSV
    CDGJNPT
    CDGJNPU
    CDGJNPV
    CDGJNRT
    CDGJNRU
    CDGJNRV
    CDGJNST
    CDGJNSU
    CDGJNSV
    CDGKMPT
    CDGKMPU
    CDGKMPV
    CDGKMRT
    CDGKMRU
    CDGKMRV
    CDGKMST
    CDGKMSU
    CDGKMSV
    CDGKNPT
    CDGKNPU
    CDGKNPV
    CDGKNRT
    CDGKNRU
    CDGKNRV
    CDGKNST
    CDGKNSU
    CDGKNSV
    CDGLMPT
    CDGLMPU
    CDGLMPV
    CDGLMRT
    CDGLMRU
    CDGLMRV
    CDGLMST
    CDGLMSU
    CDGLMSV
    CDGLNPT
    CDGLNPU
    CDGLNPV
    CDGLNRT
    CDGLNRU
    CDGLNRV
    CDGLNST
    CDGLNSU
    CDGLNSV
    CDHJMPT
    CDHJMPU
    CDHJMPV
    CDHJMRT
    CDHJMRU
    CDHJMRV
    CDHJMST
    CDHJMSU
    CDHJMSV
    CDHJNPT
    CDHJNPU
    CDHJNPV
    CDHJNRT
    CDHJNRU
    CDHJNRV
    CDHJNST
    CDHJNSU
    CDHJNSV
    CDHKMPT
    CDHKMPU
    CDHKMPV
    CDHKMRT
    CDHKMRU
    CDHKMRV
    CDHKMST
    CDHKMSU
    CDHKMSV
    CDHKNPT
    CDHKNPU
    CDHKNPV
    CDHKNRT
    CDHKNRU
    CDHKNRV
    CDHKNST
    CDHKNSU
    CDHKNSV
    CDHLMPT
    CDHLMPU
    CDHLMPV
    CDHLMRT
    CDHLMRU
    CDHLMRV
    CDHLMST
    CDHLMSU
    CDHLMSV
    CDHLNPT
    CDHLNPU
    CDHLNPV
    CDHLNRT
    CDHLNRU
    CDHLNRV
    CDHLNST
    CDHLNSU
    CDHLNSV
    CDIJMPT
    CDIJMPU
    CDIJMPV
    CDIJMRT
    CDIJMRU
    CDIJMRV
    CDIJMST
    CDIJMSU
    CDIJMSV
    CDIJNPT
    CDIJNPU
    CDIJNPV
    CDIJNRT
    CDIJNRU
    CDIJNRV
    CDIJNST
    CDIJNSU
    CDIJNSV
    CDIKMPT
    CDIKMPU
    CDIKMPV
    CDIKMRT
    CDIKMRU
    CDIKMRV
    CDIKMST
    CDIKMSU
    CDIKMSV
    CDIKNPT
    CDIKNPU
    CDIKNPV
    CDIKNRT
    CDIKNRU
    CDIKNRV
    CDIKNST
    CDIKNSU
    CDIKNSV
    CDILMPT
    CDILMPU
    CDILMPV
    CDILMRT
    CDILMRU
    CDILMRV
    CDILMST
    CDILMSU
    CDILMSV
    CDILNPT
    CDILNPU
    CDILNPV
    CDILNRT
    CDILNRU
    CDILNRV
    CDILNST
    CDILNSU
    CDILNSV
    CEGJMPT
    CEGJMPU
    CEGJMPV
    CEGJMRT
    CEGJMRU
    CEGJMRV
    CEGJMST
    CEGJMSU
    CEGJMSV
    CEGJNPT
    CEGJNPU
    CEGJNPV
    CEGJNRT
    CEGJNRU
    CEGJNRV
    CEGJNST
    CEGJNSU
    CEGJNSV
    CEGKMPT
    CEGKMPU
    CEGKMPV
    CEGKMRT
    CEGKMRU
    CEGKMRV
    CEGKMST
    CEGKMSU
    CEGKMSV
    CEGKNPT
    CEGKNPU
    CEGKNPV
    CEGKNRT
    CEGKNRU
    CEGKNRV
    CEGKNST
    CEGKNSU
    CEGKNSV
    CEGLMPT
    CEGLMPU
    CEGLMPV
    CEGLMRT
    CEGLMRU
    CEGLMRV
    CEGLMST
    CEGLMSU
    CEGLMSV
    CEGLNPT
    CEGLNPU
    CEGLNPV
    CEGLNRT
    CEGLNRU
    CEGLNRV
    CEGLNST
    CEGLNSU
    CEGLNSV
    CEHJMPT
    CEHJMPU
    CEHJMPV
    CEHJMRT
    CEHJMRU
    CEHJMRV
    CEHJMST
    CEHJMSU
    CEHJMSV
    CEHJNPT
    CEHJNPU
    CEHJNPV
    CEHJNRT
    CEHJNRU
    CEHJNRV
    CEHJNST
    CEHJNSU
    CEHJNSV
    CEHKMPT
    CEHKMPU
    CEHKMPV
    CEHKMRT
    CEHKMRU
    CEHKMRV
    CEHKMST
    CEHKMSU
    CEHKMSV
    CEHKNPT
    CEHKNPU
    CEHKNPV
    CEHKNRT
    CEHKNRU
    CEHKNRV
    CEHKNST
    CEHKNSU
    CEHKNSV
    CEHLMPT
    CEHLMPU
    CEHLMPV
    CEHLMRT
    CEHLMRU
    CEHLMRV
    CEHLMST
    CEHLMSU
    CEHLMSV
    CEHLNPT
    CEHLNPU
    CEHLNPV
    CEHLNRT
    CEHLNRU
    CEHLNRV
    CEHLNST
    CEHLNSU
    CEHLNSV
    CEIJMPT
    CEIJMPU
    CEIJMPV
    CEIJMRT
    CEIJMRU
    CEIJMRV
    CEIJMST
    CEIJMSU
    CEIJMSV
    CEIJNPT
    CEIJNPU
    CEIJNPV
    CEIJNRT
    CEIJNRU
    CEIJNRV
    CEIJNST
    CEIJNSU
    CEIJNSV
    CEIKMPT
    CEIKMPU
    CEIKMPV
    CEIKMRT
    CEIKMRU
    CEIKMRV
    CEIKMST
    CEIKMSU
    CEIKMSV
    CEIKNPT
    CEIKNPU
    CEIKNPV
    CEIKNRT
    CEIKNRU
    CEIKNRV
    CEIKNST
    CEIKNSU
    CEIKNSV
    CEILMPT
    CEILMPU
    CEILMPV
    CEILMRT
    CEILMRU
    CEILMRV
    CEILMST
    CEILMSU
    CEILMSV
    CEILNPT
    CEILNPU
    CEILNPV
    CEILNRT
    CEILNRU
    CEILNRV
    CEILNST
    CEILNSU
    CEILNSV
    CFGJMPT
    CFGJMPU
    CFGJMPV
    CFGJMRT
    CFGJMRU
    CFGJMRV
    CFGJMST
    CFGJMSU
    CFGJMSV
    CFGJNPT
    CFGJNPU
    CFGJNPV
    CFGJNRT
    CFGJNRU
    CFGJNRV
    CFGJNST
    CFGJNSU
    CFGJNSV
    CFGKMPT
    CFGKMPU
    CFGKMPV
    CFGKMRT
    CFGKMRU
    CFGKMRV
    CFGKMST
    CFGKMSU
    CFGKMSV
    CFGKNPT
    CFGKNPU
    CFGKNPV
    CFGKNRT
    CFGKNRU
    CFGKNRV
    CFGKNST
    CFGKNSU
    CFGKNSV
    CFGLMPT
    CFGLMPU
    CFGLMPV
    CFGLMRT
    CFGLMRU
    CFGLMRV
    CFGLMST
    CFGLMSU
    CFGLMSV
    CFGLNPT
    CFGLNPU
    CFGLNPV
    CFGLNRT
    CFGLNRU
    CFGLNRV
    CFGLNST
    CFGLNSU
    CFGLNSV
    CFHJMPT
    CFHJMPU
    CFHJMPV
    CFHJMRT
    CFHJMRU
    CFHJMRV
    CFHJMST
    CFHJMSU
    CFHJMSV
    CFHJNPT
    CFHJNPU
    CFHJNPV
    CFHJNRT
    CFHJNRU
    CFHJNRV
    CFHJNST
    CFHJNSU
    CFHJNSV
    CFHKMPT
    CFHKMPU
    CFHKMPV
    CFHKMRT
    CFHKMRU
    CFHKMRV
    CFHKMST
    CFHKMSU
    CFHKMSV
    CFHKNPT
    CFHKNPU
    CFHKNPV
    CFHKNRT
    CFHKNRU
    CFHKNRV
    CFHKNST
    CFHKNSU
    CFHKNSV
    CFHLMPT
    CFHLMPU
    CFHLMPV
    CFHLMRT
    CFHLMRU
    CFHLMRV
    CFHLMST
    CFHLMSU
    CFHLMSV
    CFHLNPT
    CFHLNPU
    CFHLNPV
    CFHLNRT
    CFHLNRU
    CFHLNRV
    CFHLNST
    CFHLNSU
    CFHLNSV
    CFIJMPT
    CFIJMPU
    CFIJMPV
    CFIJMRT
    CFIJMRU
    CFIJMRV
    CFIJMST
    CFIJMSU
    CFIJMSV
    CFIJNPT
    CFIJNPU
    CFIJNPV
    CFIJNRT
    CFIJNRU
    CFIJNRV
    CFIJNST
    CFIJNSU
    CFIJNSV
    CFIKMPT
    CFIKMPU
    CFIKMPV
    CFIKMRT
    CFIKMRU
    CFIKMRV
    CFIKMST
    CFIKMSU
    CFIKMSV
    CFIKNPT
    CFIKNPU
    CFIKNPV
    CFIKNRT
    CFIKNRU
    CFIKNRV
    CFIKNST
    CFIKNSU
    CFIKNSV
    CFILMPT
    CFILMPU
    CFILMPV
    CFILMRT
    CFILMRU
    CFILMRV
    CFILMST
    CFILMSU
    CFILMSV
    CFILNPT
    CFILNPU
    CFILNPV
    CFILNRT
    CFILNRU
    CFILNRV
    CFILNST
    CFILNSU
    CFILNSV
    
    04.06.2010

    9

    243 символа Python

    pad = [" ","-","ABC","DEF","GHI","JKL","MN","PRS","TUV","WXY"]
    def c(p,v):
      try:
        if 1>len(v):print p;return        
        map(lambda a:c(p+a,v[1:]),pad[int(v[0])])
      except:
        p(p+"-",v[1:])        
    c("","4285246")
    
    03.06.2010
    Новые материалы

    Коллекции публикаций по глубокому обучению
    Последние пару месяцев я создавал коллекции последних академических публикаций по различным подполям глубокого обучения в моем блоге https://amundtveit.com - эта публикация дает обзор 25..

    Представляем: Pepita
    Фреймворк JavaScript с открытым исходным кодом Я знаю, что недостатка в фреймворках JavaScript нет. Но я просто не мог остановиться. Я хотел написать что-то сам, со своими собственными..

    Советы по коду Laravel #2
    1-) Найти // You can specify the columns you need // in when you use the find method on a model User::find(‘id’, [‘email’,’name’]); // You can increment or decrement // a field in..

    Работа с временными рядами спутниковых изображений, часть 3 (аналитика данных)
    Анализ временных рядов спутниковых изображений для данных наблюдений за большой Землей (arXiv) Автор: Рольф Симоэс , Жильберто Камара , Жильберто Кейрос , Фелипе Соуза , Педро Р. Андраде ,..

    3 способа решить квадратное уравнение (3-й мой любимый) -
    1. Методом факторизации — 2. Используя квадратичную формулу — 3. Заполнив квадрат — Давайте поймем это, решив это простое уравнение: Мы пытаемся сделать LHS,..

    Создание VR-миров с A-Frame
    Виртуальная реальность (и дополненная реальность) стали главными модными терминами в образовательных технологиях. С недорогими VR-гарнитурами, такими как Google Cardboard , и использованием..

    Демистификация рекурсии
    КОДЕКС Демистификация рекурсии Упрощенная концепция ошеломляющей О чем весь этот шум? Рекурсия, кажется, единственная тема, от которой у каждого начинающего студента-информатика..