Поскольку большинство стран, использующих евро, имеют ,
десятичный разделитель, вы также должны использовать его.
Задача - вывести все значения монет евро и банкнот в порядке возрастания. Вы также должны поставить трейлинг ,00
на целочисленные значения.
0,01 0,02 0,05 0,10 0,20 0,50 1,00 2,00 5,00 10,00 20,00 50,00 100,00 200,00 500,00
Я принимаю оба вывода на стандартный вывод или функцию, возвращающую массив / список. Если вывод выводится в stdout, допустимыми разделителями между значениями являются: пробел, табуляция или символ новой строки.
Не будет принятого ответа, если я не увижу кого-то, кого я нахожу очень креативным.
Код-гольф , поэтому я хочу знать кратчайший ответ по языку.
Обновить:
Ведущие 0
нули не принимаются. Извините, я должен прояснить это раньше.
Обновление 2:
Также допустима функция, возвращающая строку.
000,01
и т. Д.)?Ответы:
Чистый Баш, 48
Попробуйте онлайн .
источник
Japt ,
2322 байта-1 байт благодаря @Shaggy
Возвращает массив строк.
Попробуйте онлайн! с
-R
флагом для вывода элементов массива в отдельных строках.источник
Python 2 , 72 байта
Попробуйте онлайн!
Выражение
5>>~x%3
отображает неотрицательные целые числа к1
,2
,5
,1
,2
,5
...Это работает , потому что
5
,2
,1
являются последовательными правыми bitshifts из5
(0b101
→0b10
→0b1
); мы перебираем их в обратном направлении.источник
Древесный уголь , 36 байт
Попробуйте онлайн! Ссылка на подробную версию кода. Объяснение:
источник
SOGLOnline офлайн,
27262524232221 байтПопробуй здесь!
Онлайн-ссылка не показывает конечные нули, но офлайн-версия делает Javas BigDecimals приятными.
Объяснение:
Чтобы запустить автономный интерпретатор, загрузите репозиторий SOGLOnlines , перейдите к компилятору / интерпретатору, откройте любой из
.pde
файлов с помощью Processing , затем выполните file -> export для вашей ОС (в противном случае вы не можете предоставить аргументы программе Processing: /), и затем запустите скомпилированную программу с аргументом пути к файлу с кодом. Тогда stdout будет содержать это .2L¼2¹5∙īυ;{⁴Ζ.,ŗP*
для 18 байт почти работает, но нулевое количество увеличивается, в результате чего0,01 0,02 0,050 0,100 0,200 0,5000 1,0000 2,0000 5,00000 10,00000 20,00000 50,000000 100,000000 200,000000 500,0000000
(переводы строк заменяются пробелами)источник
,00
значения для целочисленных значений». (Я предполагаю, что это также должно включать в себя трейлинг,,0
где это уместно)Java 8,
1091088180 байтСпасибо @ OlivierGrégoire за идею Locale
Попробуйте онлайн!
источник
Locale.setDefault(Locale.FRENCH);
в неконкурентной части TIO.x->{for(double i=.001;i<11;)System.out.printf("%.2f %.2f %.2f ",i*=10,i*2,5*i);}
Баш , 38 байт
Требуется соответствующая локаль, которая разрешена по умолчанию и не требует байтов .
Попробуйте онлайн!
источник
APL (Dyalog) ,
3028 байтовПолная программа Выходы в пространство разделены на STDOUT.
Попробуйте онлайн!
2 2.5 2
список;[2,2.5,2]
14⍴
циклический г eshape до длины 14;[2,2.5,2,2,2.5,2,2,2.5,2,2,2.5,2,2,2.5]
.01
предварительно 0,01;[0.01,2,2.5,2,2,2.5,2,2,2.5,2,2,2.5,2,2,2.5]
×\
кумулятивное умножение;[0.01,0.02,0.05,0.1,0.2,0.5,1,2,5,10,20,50,100,200,500]
2⍕
формат с двумя десятичными знаками;" 0.01 0.02 0.05 0.10 0.20 0.50 1.00 2.00 5.00 10.00 20.00 50.00 100.00 200.00 500.00"
⊢
дать это (отделить','
от2
)'\.'⎕R','
PCRE R заменяют точки запятыми;" 0,01 0,02 0,05 0,10 0,20 0,50 1,00 2,00 5,00 10,00 20,00 50,00 100,00 200,00 500,00"
источник
R
70, 50 байтоввдохновленный @Giuseppe:
Попробуй это здесь!
Ungolfed
источник
Pyth , 37 байт
Попробуйте онлайн!
Pyth , 37 байт
Сократится через несколько минут.
Попробуйте онлайн!
источник
JavaScript (ES6), 83 байта
Возвращает массив.
демонстрация
Показать фрагмент кода
Рекурсивная версия (ES7), 84 байта
Возвращает строку с завершающим пробелом.
демонстрация
Показать фрагмент кода
источник
Python 2 ,
80777573 байта-2 байта благодаря @ Mr.Xcoder
-1 байту благодаря @EriktheOutgolfer
-2 байта благодаря @totallyhuman
-2 байта благодаря @Lynn
Попробуйте онлайн!
источник
Сетчатка , 42 байта
Попробуйте онлайн! Пояснение: Есть пятнадцать значений, с 1, 2 и 5 в каждом из пяти мест. Первый этап вставляет пять нулей. Второй этап повторяет их в квадрат, затем меняет конечную диагональ на 1 с, затем дублирует эти строки три раза с 2 и 5. На третьем этапе вставляются запятые, а на последнем этапе удаляются ненужные начальные нули.
источник
Древесный уголь , 37 байт
Попробуйте онлайн! Ссылка на подробную версию.
Уу, компрессия!
источник
Баш , 88 байт
Попробуйте онлайн!
источник
echo 0,01 0,02 0,05 0,10 0,20 0,50 1,00 2,00 5,00 10,00 20,00 50,00 100,00 200,00 500,00
такая же длина :(JavaScript (ES6), 81 байт
Возвращает массив.
демонстрация
Показать фрагмент кода
источник
Common Lisp, 95 байт
Попробуйте онлайн!
источник
Шелуха , 28 байт
Попробуйте онлайн!
Просто манипулирование строками, так как Husk ужасен при форматировании чисел с плавающей запятой.
объяснение
источник
C ++,
138120 байт-18 байт благодаря MSalters
Версия в жестком коде, Линн, 116 байт
источник
v
иf
:void p(){for(auto&a:{"0,0%d ","0,%d0 ","%d,00 ","%d0,00 ","%d00,00 "})for(int b:{1,2,5})printf(a,b);}
- всего 120 байтов#include<ios>void p(){puts("0,01 0,02 0,05 0,10 0,20 0,50 1,00 2,00 5,00 10,00 20,00 50,00 100,00 200,00 500,00");}
составляет 116 байт.R ,
7061 байтПопробуйте онлайн!
-9 байт благодаря Руи Баррадасу
Outgolfed от AndriusZ
источник
print
format(c(1,2,5)*10^rep(-2:2,e=3),ns=2,de=",",sc=9)
print
ответ, но вы должны опубликовать его самостоятельно; Я просто использовал самый варварский метод, чтобы изменить настройки, используяformat
некоторые реальные мысли.options
в один.options(OutDec=",",scipen=5)
,C (gcc) , 82 байта
Попробуйте онлайн!
источник
05AB1E , 25 байтов
Возвращает список строк.
Попробуйте онлайн.
Объяснение:
125S5и
может быть•}•15∍
(сдавить сжатие125
; увеличить его до размера 15:)125125125125125
и'.',:
может быть„.,`:
(сдвинуть строку ".,", вытолкнуть и поместить символы как отдельные элементы в стек) для одного и того же числа байтов: попробуйте в Интернете.Кроме того,
N3÷°*т/
может быть сокращено доN3÷Í°*
(гдеÍ
вычитает 2), но, к сожалению, нам нужно,/
чтобы все числа стали десятичными, тогда как сN3÷Í°*
большинством чисел останутся целые числа.источник
T-SQL, 104 байта
Разрывы строки предназначены только для удобства чтения.
Раздражающе длиннее тривиальной
PRINT
версии (90 байт):источник
Жевательная резинка , 41 байт
Попробуйте онлайн!
источник
Сетчатка , 58 байт
Попробуйте онлайн!
источник
Рубин ,
6662 байтаНа 4 байта короче благодаря Линн !
Попробуйте онлайн!
источник
-2.upto 2{…}
экономит 3 байта.'%.2f '.%v*10**m
сохраняет один байт (вызывая%
метод!)C # (.NET Core) , 107 байт
Запустить его
источник
JavaScript - 96 байт
А вот немного более длинный (98 символов) функциональный подход:
источник
J , 36 байт
Попробуйте онлайн!
источник
Tcl , 80 байт
Попробуйте онлайн!
Tcl , 90 байт
Попробуйте онлайн!
Все еще очень долго, игра в гольф это позже!источник
set i -2;time {lmap c {1 2 5} {puts [regsub \\. [format %.2f [expr $c*1e$i]] ,]};incr i} 5
time
для итерации вместоlmap
рендеринга большего количества байтов:set d -3;time {incr d;lmap c {1 2 5} {puts [regsub \\. [format %.2f $c\e$d] ,]}} 5