Редагувати: Дозволено повторно використовувати пробіли.
Ваше завдання - написати n програм (або функцій, або тіл функцій, не використовуючи параметри чи назви функцій) однією мовою. До - й програма повинна вивести (кардинальний) число до в стандартній англійській мові в нижньому регістрі (з додатковим символом нової рядком). Отже, перша програма повинна виводити one
, друга - виводити two
і т. Д. Для числа, що має дві частини, вони повинні бути розділені дефісом, схожим twenty-one
.
Але жодна з двох програм, які ви подаєте, не може ділитися символами без пробілів або символами пробілу, виконуючи корисні роботи. Наприклад, якщо ваша перша програма просто "one"
, то жоден з "
o
n
і e
не може бути знову використаний в інших ваших програмах.
Ви можете використовувати символи пробілів (пробіли, нові рядки та вкладки) у двох чи більше програмах, якщо вони служать лише як роздільники або відступи та нічого не роблять самі. Таким чином, ви не можете використовувати їх повторно мовою Whitespace , і ви не можете використовувати їх у рядках у більш ніж одній програмі.
Можна використовувати лише символи, вкладки та нові рядки для друку (ASCII), що друкуються (включаючи CR та LF). Кожна програма повинна містити не менше 1 символу.
Ваш бал - це сума 1 / розмір програми ^ 1,5. Найвищий результат виграє. Ви можете використовувати цей фрагмент стека ( або цей код CJam ), щоб розрахувати свій рахунок:
function updatescore(a){var l=a.value.split("\n"),s=0;for(var i=0;i<l.length;i++){var t=l[i].length;t-=t&&l[i][t-1]=="\r";if(t)s+=Math.pow(t,-1.5);}document.getElementById('result').textContent=s;}
<textarea id="input" placeholder="Put your code here, one per line." style="width:100%;height:150px;box-sizing:border-box" oninput="updatescore(this)" onpropertychange="updatescore(this)"></textarea><div>Your score: <span id="result">0</span></div>