招待会结束,感谢大家的参与!
您可以留下您的决定,但获胜者已经选出,不会重新计票。
问候。
任务:编写一个函数,从任意输入数组中选择所有数字组合,其总和等于 10。
更多详细信息:
数字范围:0 - 1000(含)。
输入数组中的数字数:1 - 10(含)。
已经选择的号码可以多次使用,但组合必须是唯一的。
---改变位置不会使组合唯一,即[1,9]
不允许[9,1]
)。
--- 使用输入数据,[5,5,2,3]
你可以做[5,5]
,[5,2,3]
。
比赛时间:14天。
所需的响应标签格式(用于自动解析器到表):
<h2>Язык, КоличествоСимволов</h2>
获胜者的定义:由等级决定:
- 由最少字符数组成的实现。
- 获得最多赞成票的实施(总体评分减去反对票)。
- 第一次修订时间较早的实现。
还需要提供一个带有您的工作代码的在线编译器的链接。
欢迎测试。
强烈建议同时提供代码的竞争版本(缩小和/或带有巫术)和相同代码的可视化描述。每个人不仅有兴趣看到语言的魔力,而且有兴趣为自己学习一些东西。
如果以不同的语言实现,则允许一位参与者提供多个答案。但每种语言不超过一个
如对条款的细节和/或分歧和/或解释有任何疑问,请在本文评论或代码高尔夫聊天室中讨论。
结果:
大多数赞成票的标准 3 个位置 + 1 个(总体评分减去反对票数)。
第一名:@PavelMayorov-, 42Haskell
个字符。
第二名:@ArtemKonovalov-,69Scala
个字符。
第三名:@Mike-,78Perl
个字符。
观众选择:@D-side ( Ruby
, 84) - 19 分。
恭喜所有参赛者,你们打得很好。
激情在最后高涨,出人意料地公布了一项以 1 个符号超越领导者的决定。
但是命运把一切都带回来了。
我想指出来自用户@AlexanderGavrikov的本次比赛的不寻常解决方案- 1437个字符!
这是一种记录,值得注意。
排行榜:
execute(581668);
.cssload-container,.cssload-cube{width:97px;height:97px;transform-style:preserve-3d}.cssload-container,.cssload-cube,.cssload-half1,.cssload-half2{transform-style:preserve-3d}.cssload-container{position:relative;margin:23px 84px;perspective:292px}.cssload-cube{animation:cube 11.5s forwards infinite;transform-origin:center 49px}.cssload-half1,.cssload-s1{top:0;transform-origin:50% 100%}.cssload-half1{height:39px;position:absolute;animation:half-fold 11.5s forwards infinite}.cssload-side{width:19px;height:19px;background:#ddd;position:absolute}.cssload-s1{left:39px;animation:s1ani 11.5s forwards infinite}.cssload-s2,.cssload-s3,.cssload-s4{left:39px;transform-origin:50% 0}.cssload-s2{top:19px;animation:s2ani 11.5s forwards infinite}.cssload-s3{top:39px;animation:s3ani 11.5s forwards infinite}.cssload-s4{top:58px;animation:s4ani 11.5s forwards infinite}.cssload-s5{left:19px;top:19px;transform-origin:100% 50%;animation:s5ani 11.5s forwards infinite}.cssload-s6{left:58px;top:39px;transform-origin:0 50%;animation:s6ani 11.5s forwards infinite}@keyframes cube{0%,30%{transform:rotateX(0)}40%{transform:rotateX(45deg) rotateY(0) rotate(45deg)}60%{transform:rotateX(60deg) rotateY(0) rotate(45deg)}65%,70%{transform:rotateX(60deg) rotate(45deg) rotate(180deg)}75%,80%{transform:rotateX(60deg) rotate(45deg) rotate(1turn)}90%{transform:rotateX(0) rotate(0) rotate(0)}}@keyframes s1ani{0%{opacity:1;transform:translateY(0);background:#ddd}40%{transform:rotateX(0);background:#ddd}50%{transform:rotateX(-90deg);background:#ddd}90%{transform:rotateX(-90deg)}}@keyframes s2ani{0%{opacity:0;transform:rotateX(-179deg)}10%{opacity:1;transform:rotateX(0)}40%{background:#ddd}45%,80%{background:#b4b4b4}65%{opacity:1;background:#b4b4b4}90%{opacity:1}to{opacity:0}}@keyframes s3ani{0%,10%{opacity:0;transform:rotateX(-179deg)}20%,90%{opacity:1;transform:rotateX(0)}40%{background:#ddd}45%{background:#969696}to{opacity:0}}@keyframes s4ani{0%,20%{opacity:0;transform:rotateX(-179deg)}10%,to{opacity:0}30%{opacity:1;transform:rotateX(0)}40%{transform:rotateX(0);background:#ddd}50%{transform:rotateX(90deg);background:#b4b4b4}80%{background:#b4b4b4}90%{opacity:1;transform:rotateX(90deg)}}@keyframes s5ani{0%,10%{opacity:0;transform:rotateY(-179deg)}20%{opacity:1;background:#ddd;transform:rotateY(0)}40%{transform:rotateY(0)}50%{transform:rotateY(90deg)}55%{background:#ddd}60%{background:#c8c8c8}90%{transform:rotateY(90deg);opacity:1}to{opacity:0}}@keyframes s6ani{0%,20%{opacity:0;transform:rotateY(179deg)}30%{opacity:1;transform:rotateY(0)}40%{transform:rotateY(0)}50%{transform:rotateY(-90deg);background:#ddd}60%,80%{background:#c8c8c8}90%{opacity:1;transform:rotateY(-90deg)}to{opacity:0}}@keyframes half-fold{0%,50%{transform:rotateX(0)}60%,90%{transform:rotateX(-90deg)}}
.cssload-container,.cssload-cube{width:97px;height:97px;transform-style:preserve-3d}.cssload-container,.cssload-cube,.cssload-half1,.cssload-half2{transform-style:preserve-3d}.cssload-container{position:relative;margin:23px 84px;perspective:292px}.cssload-cube{animation:cube 11.5s forwards infinite;transform-origin:center 49px}.cssload-half1,.cssload-s1{top:0;transform-origin:50% 100%}.cssload-half1{height:39px;position:absolute;animation:half-fold 11.5s forwards infinite}.cssload-side{width:19px;height:19px;background:#ddd;position:absolute}.cssload-s1{left:39px;animation:s1ani 11.5s forwards infinite}.cssload-s2,.cssload-s3,.cssload-s4{left:39px;transform-origin:50% 0}.cssload-s2{top:19px;animation:s2ani 11.5s forwards infinite}.cssload-s3{top:39px;animation:s3ani 11.5s forwards infinite}.cssload-s4{top:58px;animation:s4ani 11.5s forwards infinite}.cssload-s5{left:19px;top:19px;transform-origin:100% 50%;animation:s5ani 11.5s forwards infinite}.cssload-s6{left:58px;top:39px;transform-origin:0 50%;animation:s6ani 11.5s forwards infinite}@keyframes cube{0%,30%{transform:rotateX(0)}40%{transform:rotateX(45deg) rotateY(0) rotate(45deg)}60%{transform:rotateX(60deg) rotateY(0) rotate(45deg)}65%,70%{transform:rotateX(60deg) rotate(45deg) rotate(180deg)}75%,80%{transform:rotateX(60deg) rotate(45deg) rotate(1turn)}90%{transform:rotateX(0) rotate(0) rotate(0)}}@keyframes s1ani{0%{opacity:1;transform:translateY(0);background:#ddd}40%{transform:rotateX(0);background:#ddd}50%{transform:rotateX(-90deg);background:#ddd}90%{transform:rotateX(-90deg)}}@keyframes s2ani{0%{opacity:0;transform:rotateX(-179deg)}10%{opacity:1;transform:rotateX(0)}40%{background:#ddd}45%,80%{background:#b4b4b4}65%{opacity:1;background:#b4b4b4}90%{opacity:1}to{opacity:0}}@keyframes s3ani{0%,10%{opacity:0;transform:rotateX(-179deg)}20%,90%{opacity:1;transform:rotateX(0)}40%{background:#ddd}45%{background:#969696}to{opacity:0}}@keyframes s4ani{0%,20%{opacity:0;transform:rotateX(-179deg)}10%,to{opacity:0}30%{opacity:1;transform:rotateX(0)}40%{transform:rotateX(0);background:#ddd}50%{transform:rotateX(90deg);background:#b4b4b4}80%{background:#b4b4b4}90%{opacity:1;transform:rotateX(90deg)}}@keyframes s5ani{0%,10%{opacity:0;transform:rotateY(-179deg)}20%{opacity:1;background:#ddd;transform:rotateY(0)}40%{transform:rotateY(0)}50%{transform:rotateY(90deg)}55%{background:#ddd}60%{background:#c8c8c8}90%{transform:rotateY(90deg);opacity:1}to{opacity:0}}@keyframes s6ani{0%,20%{opacity:0;transform:rotateY(179deg)}30%{opacity:1;transform:rotateY(0)}40%{transform:rotateY(0)}50%{transform:rotateY(-90deg);background:#ddd}60%,80%{background:#c8c8c8}90%{opacity:1;transform:rotateY(-90deg)}to{opacity:0}}@keyframes half-fold{0%,50%{transform:rotateX(0)}60%,90%{transform:rotateX(-90deg)}}
/* TODO: Fix it */
body {
font-size: 1rem;
line-height: 1.5rem;
font-family: 'Open Sans', sans-serif;
background: #fff;
padding: 0 2rem;
}
h1 {
font-weight: 600;
margin-bottom: 3rem;
text-align: center;
color: #212121;
}
#leadership {
width: 100%;
margin: 1rem auto;
border-collapse: collapse;
box-shadow: 0 2px 7px rgba(0,0,0,0.2);
background: #fafafa;
}
#leadership td {
padding: 1rem .5rem !important;
text-align: left;
font-weight: 500;
transition: all .3s ease-in-out;
}
#leadership tr:hover td{
background: #03a9f4;
color: #fefefe;
}
#leadership tr:hover td a {
color: #fff;
}
#leadership th {
padding: 1.5rem .5rem !important;
color: #727272;
text-align: left !important;
font-weight: 500;
border-bottom: 1px solid #dcdcdc;
}
#leadership a {
text-decoration: none;
color: #212121;
}
#leadership a:hover {
color: #03a9f4;
}
#leadership td:nth-of-type(1){
text-align: center;
color: #727272;
font-size: .75rem;
}
#leadership td:nth-of-type(2){
}
#leadership td:nth-of-type(2) img {
width: 34px;
border-radius: 50%;
}
/* #leadership th:nth-of-type(1),
#leadership th:nth-of-type(2){
border-bottom: none;
} */
#leadership th:nth-of-type(5),
#leadership th:nth-of-type(6),
#leadership th:nth-of-type(7),
#leadership td:nth-of-type(5),
#leadership td:nth-of-type(6),
#leadership td:nth-of-type(7) {
text-align: center !important;
}
<script src="https://mayorovp.github.io/codegolf/97314479fcd24a2386e1.js"></script>
<div class=cssload-container><div class=cssload-cube><div class=cssload-half1><div class="cssload-side cssload-s1"></div><div class="cssload-side cssload-s2"></div><div class="cssload-side cssload-s5"></div></div><div class=cssload-half2><div class="cssload-side cssload-s3"></div><div class="cssload-side cssload-s4"></div><div class="cssload-side cssload-s6"></div></div></div></div>
大家好运!
红宝石,84
91第一个从网站上看仍然适合一行的解决方案!
这是一个用输入数组调用的 lambda 文字。结果将是一组找到的组合。
艾迪酮
在Ruby中,获取数组元素组合的功能是直接在类中实现的
Array
,在标准库中。哎哟。否则,解决方案将尽可能直接并很好地翻译成自然语言:
Поскольку порядок в комбинациях неважен, чтобы не получить дубликатов, массив можно отсортировать. Можно отсортировать и комбинации постфактум, но это медленнее и требует больше символов.
Haskell, 42
70символаТребует импорта функций
nub
,sort
иsubsequences
из Data.ListЗапуск:
main = print $ g [5,5,2,3]
http://ideone.com/5jUIsyКак работает:
nub
, см. далее, не поймет);subsequences
находит все сочетания (без ограничения длины), их 2m, где m - длина входного списка;filter
выбираются те сочетания, которые дают нужную сумму;nub
выбираются различные сочетания.PS спасибо участнику Artem Konovalov за то, что опосредованно подсказал мне не писать велосипед, а заглянуть в стандартную библиотеку языка :)
SQL SQLite
Oracle 11.2, 104114124147176обнаружен баг (см.комментарии)
Реализация алгоритма выборки комбинации слагаемых для получения заданной суммы из заданного набора значений, с помощью рекурсивных SQL-запросов
в конкурсном убраны алиасы. вместо
t.r
-w
,a.r
-r
,a.i
-i
珀尔,78
819598109112118121123178在ideone.com上测试
未压缩版本:
带递归的旧版本(95 个字符):
JavaScript,
16314814112912411810992比赛的字节码 :) 与@Mike 共同创作。
代码说明:
混淆测试:
PS 并发的变体为了简洁起见有多余的参数:
第二个参数必须是所需的数量,在我们的例子中是 10。
第三个参数是将写入结果的对象,希望允许在返回时保存)
R, 111
Код на IDE ONE
Человекопонятный код:
Вызывется на интересующем векторе
PHP, 114
120 127 130 131 132 143 151 140 142 145 149 163 171 172По количеству так-же, но выдает меньше предупреждений и работает быстрее.
sandbox
Python3, 130
131 136 144 147 168 182 216 226缩小版:
使用示例:
高尔夫专用的缩小版。
未缩小版本:
现场示例:http:
//ideone.com/ggl9lO
Javascript ES6,
165161150147145134133125123 (错误)124118笔记:
考试:
Scala, 69
73, 80Нечитабельный вариант:
пример использования
Читабельный вариант:
Демка