Г-н Фаршеклоакин (spamsink) wrote,
Г-н Фаршеклоакин
spamsink

Problem solver

Это, конечно, не такой сильный решатель проблем, как

(скажем, проблему остановки не решит), но кому-нибудь, возможно, пригодится.
В интервью автор говорит, что название языка Sentient - приближенная анаграмма фамилии Цейтин. Это неспроста.


Пишешь, скажем,
array10<int5> d;

invariant d.uniq?;
invariant d.all?(function (e) { return e.between?(0,9); });

cur = 0;
0.upto(9, function^ (i) {
cur = cur * 10 + d[i];
invariant cur % (i+1) == 0;
});

expose d;

и вмиг (ну, условно) получаешь правильный ответ: {"d":[3,8,1,6,5,4,7,2,9,0]}
Subscribe

  • Перефразируя Скалигера-Прокоповича

    Вместо эпиграфа: Если в мучительские осужден кто руки, Ждет бедная голова печали и муки, Не вели томить его делом кузниц трудных, Не посылать в…

  • Топором брились

    Жил-был язык Паскаль, в котором Никлаус, да продлятся его дни, Вирт не придумал нормального форматного вывода, и в первых реализациях языка с…

  • Занимательная кодология

    Если взять файл с программой на языке программирования Паскаль, записанной в кодировке ГОСТ-10859, имевшей хождение на советских компьютерах в 60-х…

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 15 comments

  • Перефразируя Скалигера-Прокоповича

    Вместо эпиграфа: Если в мучительские осужден кто руки, Ждет бедная голова печали и муки, Не вели томить его делом кузниц трудных, Не посылать в…

  • Топором брились

    Жил-был язык Паскаль, в котором Никлаус, да продлятся его дни, Вирт не придумал нормального форматного вывода, и в первых реализациях языка с…

  • Занимательная кодология

    Если взять файл с программой на языке программирования Паскаль, записанной в кодировке ГОСТ-10859, имевшей хождение на советских компьютерах в 60-х…