Задача решается неторопливо. То есть никаких новых решений, кроме упомянутых в комментариях. Это, так к слову, к вопросу об особенных русских программистах. Ау, программисты!
Публикую задачу на англоязычных ресурсах, поделюсь результатами сравнения.
А пока, кроссвордисту (или как их там) любителю на заметку. Перед вами кроссворд не содержащий ни одной согласной буквы. Ну и что тут любопытного? спросите вы. Действительно, на первый взгляд ничего любопытного. Сплошь знакомые, любимые слова: you, yea, yay, oy и конечно yo. И вдруг – а это что такое – AA. Это откуда?
Ну что вы, как же! Знаменитая история. Когда на Гавайи приехали первые туристы, они увидели застывшую лаву (ее там, известное дело, как грязи.. в некоторых других местах). И туристы спросили гавайцев:
- Это… чё такое?
- Эт лава! – улыбнулись гавайцы.
Туристы не знали что такое лава, но на всякий случай уважительно закивали головами:
- Аа…
И тогда сообразительные гавайцы стали называть лаву словом аа, ну, чтобы впредь всем было понятно. Так слово аа и попало в английский язык, вместе со словом aloha!

#1 by Евгений on Ноябрь 4, 2010 - 9:32
У меня сегодня как раз финальная отладка. К сожалению писать приходилось урывками, среди кучи срочных дел. Завтра-послезавтра пришлю. Сложность алгоритма не зависит от числа букв в кроссворде. Кроссворд можно получить с любыми наперед заданными свойствами. В том числе, как частный случай, решается задача с плотностью, о чем в комменте говорил Влад. Получилось весьма симпатично и идейно просто. Но реализация увы, довольно навороченная. Так что русские программеры может не столь уж и особенные, просто времени иногда у них нет. А с коллегами-буржуями сравнить конечно было бы интересно…