Існує сайт під назвою «Повертайся правдою до перемоги» з цікавими завданнями для програмістів Javascript. Мета - знайти аргументи на задану функцію, які змушують її повернути істину.
Наступне - одне із завдань:
function total(x) {
return (x < x) && (x == x) && (x > x);
}
Користувачі повинні знайти фрагменти для значення, x
яке призведе до повернення функції true. Щоб перевірити фрагменти, ви викликаєте функцію разом із фрагментом як параметр (тобто total(<snippet>)
).
Я знайшов рішення з 22 символами:
{valueOf:_=>n++%3},n=0
Деякі люди знайшли рішення у 21 символіці. Я не можу знайти це рішення. Яке рішення в 21 символі?
3
Ви повинні пов’язати конкурс / сторінку, з якої взято завдання.
—
Емінья
{valueOf:Math.random}
працює час від часу ... але я підозрюю, що це порушило б якесь правило ... (а може і ні?)
Це рішуче хитрість; з перших 24 я можу відповісти лише 14 ...
—
Ніл
Примітка солоної розробки ... мати функцію повернення булева, яка називається "тотальною" - це як цвяхи на дошці!
—
сканліфф