На этом вызове вы должны решить этот вызов.
Конкурс окончен! Проверьте конец вопроса
Технические характеристики:
- Напишите наименьший код (любой язык *).
- Оценка ответа является суммой:
- Длина кода без пробелов .
- Количество ответов, использующих один и тот же язык в квадрате.
- Длина названия самого большого языка в конкурсе минус длина вашего языка.
- Downvotes минус Upvotes (иначе минус общее количество голосов)
- Напишите позицию пользователей и оценки.
- Каждый пользователь может написать только один ответ.
- Самый низкий балл побеждает.
Тестирование:
Итак, в конце конкурса возможный вклад может быть (STDIN):
Столбцы: Имя пользователя, Язык, Длина кода (без пробелов) и Всего голосов.
UserA Python 100 1
UserB Perl 30 2
UserC Java 500 3
UserD Brainfuck 499 4
UserE Perl 29 5
Если у вашего имени пользователя есть пробелы вроде «My User Name», оно станет «MyUserName», поэтому входные данные всегда будут содержать ровно 4 столбца .
Выход будет (STDOUT):
1 UserE 33
2 UserB 37
3 UserA 103
4 UserD 496
5 UserC 503
Объяснение:
User P N^2 L V
A 100 1 3 -1
B 30 4 5 -2
C 500 1 5 -3
D 499 1 0 -4
E 29 4 5 -5
Brainfuck - самое большое имя с 9 символами ( 9 - 9 = 0
).
Perl и Java имеют 4 символа ( 9 - 4 = 5
).
Python имеет 6 символов ( 9 - 6 = 3
).
Perl имеет 2 записи, поэтому каждый получает 4 дополнительных очка.
О языках:
Название языка должно содержать только английские буквы (то есть [A-Za-z]), а те, которые не подходят, должны быть «переведены» на что-то другое.
К концу конкурса каждый язык должен иметь свое представление (Вы можете предложить лучшее представление)
Примеры:
Python3 -> Python
Ruby1.9 -> Ruby
Shell Script -> Shell
C++ -> Cpp
C# -> CSharp
><> -> Fish
Срок подачи заявок: 20 августа 2011 г. 00:00 UTC
В конце конкурса победитель должен использовать свою программу, чтобы найти победителя. Не победителям разрешается использовать свои программы, чтобы найти победителя, и сказать ему / ей использовать его / ее программу, чтобы найти победителя. :)
Победитель (см. Выше) получает ответ!
* Язык Whitespace имеет несправедливое преимущество, заключающееся в том, что он может вводить неограниченную сложность без штрафа за количество символов. Ответы, написанные в пробеле, могут быть на конкурсе, но не могут победить.
Если вы можете сделать логику своей программы в пробелах , вы также не сможете победить. Это субъективная тема, но если ваша программа может значительно увеличиться в размерах без наказания, она попадает в такое состояние.
Финальный ввод
Алфавитный порядок названий (по состоянию на 20 августа 2011 UTC 00:00)
boothby Sage 41 9
Harpyon Python 203 4
JBernardo Python 184 7
JoeyAdams PostgreSQL 225 6
jpjacobs AWK 269 4
Lowjacker Ruby 146 2
PeterTaylor Golfscript 82 4
rmackenzie CommonLisp 542 2
shesek Javascript 243 3
userunknown Scala 252 1
Так как ответы, как мои, так и Бутби, не могут быть выиграны, победитель должен объявить себя победителем, отредактировав этот вопрос и опубликовав окончательный результат ниже.
Окончательный вывод
1 boothby 39
2 PeterTaylor 79
3 Lowjacker 151
4 JBernardo 185
5 Harpyon 207
6 JoeyAdams 220
7 shesek 241
8 userunknown 257
9 jpjacobs 273
10 rmackenzie 541
Ответы:
Golfscript, 83 символа (82 без учета пробелов)
Объяснение:
источник
Шалфей:
484241 без пробелов (всего 60246 байт)Просто чтобы быть уколом
Обратите внимание, что первая строка должна быть эквивалентна
s='\t'
, но блок кода SE переводит табуляцию в 4 пробела.Пробел распаковывается в:
Обратите внимание, что мое использование
[0..len(inputs)-1]
гарантирует, что это не скрипт Python, так как Sage является суперпифоном *. К сожалению, exec возвращается к Python ... поэтому я должен подготовить его.редактировать 1: разделение на вкладки, а не переводы строк - о чем я думал? редактировать 2: сделал код проще для глаз, и переработал вкладку разделения, нажав еще одну «новую строку» в пустое пространство
* хорошо, не совсем: мы ломаем xor
источник
Питон, 184
Вот почему я люблю пространства.
Это гораздо более читабельно!
источник
PostgreSQL - 225 непробельных символов
242 → 225: заменены подзапросы с предложениями по работе с окнами .
протестировано на 9.2 уровне
Использование и вывод:
источник
Python 2 -
210203 непробельных символаИспользование и вывод:
источник
x.split()
(это также удалит\n
)AWK,
277269 непробельных символовИспользуется,
in
чтобы сократить 8 символов.Разнесенная версия и прокомментированная версия:
использование:
источник
sed '/#/ d' meta.awk|sed ':a;$!N;s/\n//;ta;s/\s//g;'|wc -c
для подсчета символов.Рубин, 146 символов + 4 пробела
источник
JavaScript, 243 символа
Дольше, чем большинство других решений ... но лучшее, что я мог придумать в JavaScript.
использование
Ввод должен быть в переменной J. Например, откройте консоль и напишите:
CoffeScript, 177 символов
Примерно такая же логика, в CoffeScript:
источник
length
атрибут с помощью переменной и индексов.Common Lisp - 546
(когда игрок в гольф объединяет скобки, не считая пробелов)
Сильно играли в гольф, мое общее решение для LISP было и остается самым длинным на доске. Поэтому я решил немного обмануть, написав значительно более короткий загрузчик и заявив, что это мое представление.
(Я считаю, что представление @ Boothby является прецедентом в пользу такого поведения)Большое спасибо Питеру Тейлору за его помощь в выдавливании каждого последнего символа из этого загрузчика.
БАШ - 35
использование : cat ./test0 | bash ./btstrp.sh
Джои Адамс отметил, что это не справедливое решение, потому что я могу «произвольно увеличить сложность вашего решения без соответствующего увеличения размера кода», что явно не указано в спецификации.
источник
$REPLY
. Попробуйwhile read x;do a=$x"\n"$a;done
. И вы должны быть в состоянии удалить пробелы после|
s в последней строке. С другой стороны, я не уверен, что использование внутреннего IP-адреса очень полезно: он не будет работать ни для кого другого.wget -q http://url/l.lsp ;cat - |clisp l.lsp
Scala
269 266252 без пробелов и переносов.Призвание:
обновления:
мое решение:
*) вне конкурса
источник
stdin
вместоfromFile(System.in)
.