# 虚弱的二进制墙

HyperNeutrino 08/18/2017. 14 answers, 1.278 views

0010
0110
1001
0100 

..#.
.##.
#..#
.#.. 

....
....
.##.
#### 

0000
0000
0110
1111 

# 另一个测试案例

[10, 17, 19, 23]

01010
10001
10011
10111 

00000
10011
10011
11111 

[0, 19, 19, 31]

# 挑战

HyperNeutrino 07/29/2017
1 Leaky Nun 07/29/2017

HyperNeutrino 07/29/2017
@LeakyNun当然。 我会去做。
Marcus Müller 07/30/2017

HyperNeutrino 07/30/2017
@MarcusMüller你是对的 - 我意识到在MATL回答后：P

Suever 07/29/2017.

# MATL ，4个字节

BSXB

MATL Online上试试

Explanation

% Implicitly grab input as an array
%   STACK: [10, 17, 19, 23]
B   % Convert each element to binary where each decimal number results in a row
%   STACK: [0 1 0 1 0;
%           1 0 0 0 1;
%           1 0 0 1 1;
%           1 0 1 1 1]
S   % Sort each column, placing all of the 1's at the bottom of each column
%   STACK: [0 0 0 0 0;
%           1 0 0 1 1;
%           1 0 0 1 1;
%           1 1 1 1 1]
XB  % Convert each row from its binary representation to its decimal number
%   STACK: [0, 19, 19, 31]
% Implicitly display the result 
HyperNeutrino 07/29/2017
o_O这是如何工作的：o
1 totallyhuman 07/29/2017
MATL刚刚超出高尔夫果冻4 bytes ？ O_O
Leaky Nun 07/29/2017

HyperNeutrino 07/29/2017

1 JungHwan Min 07/29/2017

Anders Kaseorg 07/29/2017.

# Python ，68个字节

 f=lambda a:a and[x|y&a[0]for x,y in zip([0]+f(a[1:]),f(a[1:])+[-1])]

Neil 07/29/2017.

## JavaScript（ES6），50个字节

f=a=>a.map(_=>a.map((e,i)=>a[a[i]|=a[--i],i]&=e))&&a

0011
0101 

0001
0111 

Leaky Nun 07/29/2017.

# 果冻 ，9个字节

BUz0Ṣ€ZUḄ

Justin Mariner 07/29/2017.

# Japt ，16字节

m¤z3 ®¬n qÃz mn2

## 说明

m¤z3 ®¬n qÃz mn2    Implicit: U = input array.
[10, 17, 19, 23]
m¤z3                Map U to binary strings and rotate the array left 90°
1010       0111
10001   ->  1011
10011       0001
10111       1000
111
®¬n qÃ              Sort each binary string, putting 0s and spaces at the start
0111
0111
0001
0001
111
z mn2               Rotate right 90° and convert each back to a number
0000       0
10011   ->  19
10011       19
11111       31
Implicit output of resulting array 
ETHproductions 07/30/2017
think你可以用mì2 z3 mn z mì2保存一个字节
Justin Mariner 07/30/2017
@ETHproductions旋转二维数组，而不是旋转字符串数组，而是用null而不是空格填充每个内部数组。 所以这似乎并不奏效。 null值排序在1的右侧，不同于空格，它们排序在左侧。

DanTheMan 07/30/2017.

# Mathematica，64字节

#~FromDigits~2&/@(Sort/@(PadLeft[#~IntegerDigits~2&/@#]))&

xnor 07/30/2017.

# Python 3.5，60字节

 def f(a,*t):
if t:b,*r=f(*t);t=f(a|b,*r);a&=b
return(a,*t) 

Suever 07/30/2017.

# Octave， 29 25字节

4 bytes saved thanks to @Stewie

@(x)bi2de(sort(de2bi(x)))
Stewie Griffin 07/30/2017
de2bi/bi2de以八度节省4个字节。 适用于octave-online.net。
Suever 07/30/2017
@StewieGriffin谢谢！

miles 07/29/2017.

# J ，13个字节

/:~"1&.|:&.#:

## 说明

/:~"1&.|:&.#:  Input: array M
#:  Convert each in M to binary with left-padding
|:&     Transpose
/:~"1&         Sort each row
&.|:      Inverse of transpose (which is just transpose)
&.#:  Inverse of converting to binary 
Zacharý 07/30/2017

miles 08/01/2017
@Zacharý逆序用于撤消排序每行之前使用的操作。 确实，转置的反转只是转置，但另一种看到这种情况的方式是 M ，其中前两个函数只是倒数最后两个。

Erik the Outgolfer 07/30/2017.

# 05AB1E ，9个字节

bí0ζR€{øC

Magic Octopus Urn 07/31/2017
ζ ，该死的。 删除我的，拿我的+1。
Erik the Outgolfer 07/31/2017
@MagicOctopusUrn你为什么要删除你的？ 无需。
Magic Octopus Urn 07/31/2017

Zacharý 07/30/2017.

# Dyalog APL， 2421 19字节

2⊥↑{⍵[⍋⍵]}¨↓2⊥⍣¯1⊢⎕

### 怎么样？

• ⎕评估输入（数组分隔空间）
• 2⊥⍣¯1⊢将每个参数转换为二进制（转置问题中的内容）
• ↓将2D数组转换为矢量矢量
• {⍵[⍋⍵]}¨对矢量的每个元素进行排序
• ↑再次将矢量矢量转换为二维数组
• 2⊥从二进制转换（因为它转换它，我们得到正确的结果）

James Heslip 07/30/2017.

# Dyalog APL（23个字符）

NO
1. 将输入参数转换为二进制矩阵
2. 将矩阵拆分为列
3. 按升序对列进行排序
4. 将排序的行转换回十进制

## 例

{2⊥¨↓⍉↑{⍵[⍋⍵]}¨↓2⊥⍣¯1⊢⍵}10 17 19 23
0 19 19 31 

Zacharý 07/30/2017

Zacharý 07/30/2017

Zacharý 07/30/2017

James Heslip 07/30/2017

1 Zacharý 07/30/2017

ThePirateBay 07/29/2017.

# JavaScript， 127 125字节

a=>a[m='map'](_=>b[m]((n,i)=>n&&(b[i]--,d|=1<a[m](e=>d+=!!(2**c&e),d=0)&&d)).reverse()

-2 bytes thanks to Cows quack

Cows quack 07/29/2017
(1<可以变成2**c&e




 
 0 Dopapp 07/30/2017. Python 2,142字节 ...仍然打高尔夫...希望 - 任何帮助表示赞赏！ def c(l):b=[bin(n)[2:]for n in l];print[int(n,2)for n in map(''.join,zip(*map(sorted,zip(*['0'*(len(max(b,key=len))-len(x))+x for x in b]))))] 其中很大一部分是用零填充数字。 更可读： def collapse(nums): bins = [bin(n)[2:] for n in nums] bins = [('0'*(len(max(bins, key = len)) - len(x))) + x for x in bins] print [int(n, 2) for n in map(''.join, zip(*map(sorted, zip(*bins))))] 这将创建一个二进制字符串表示形式的数组，并将其顺时针旋转90º，对每行进行排序，将其旋转90º，然后在每行中创建整数。 2 comments Mr. Xcoder 07/30/2017 142个字节 ，你有一些冗余括号。 Dopapp 07/30/2017 Mr.Xcoder，哦，是的，这很愚蠢 

 Related questions 15 在不使用按位运算符的情况下打印二进制数的数量 6 实现二进制算术 22 计算二进制Sierpinski三角形序列 6 碰撞墙壁 14 什么是二进制时间？ 15 生成与反射截然不同的二进制矩阵 26 什么是反向（二进制）位数？ 10 二进制拼图游戏 45 数字是二重的吗？ 30 创建一个二元墙 30 创建一个二元墙 Hot questions 你是否应该和一个他们擅长并且总是赢的幼儿玩游戏？ AoS是什么意思？ 效应大小是否真的优于p值？ 如何在有限的第三人中引入无名，神秘的角色？ 建在台面顶部的城堡是否会有不寻常的弱点？ 什么似乎无害的数学成果需要先进的证据？ 夜间国王真正想要什么？ 为自己的完成时间安静地报警是否不专业？ 为什么人们不愿意分享有关他们工资的信息？ 我的第一个luaLaTeX例子 将字符串缩减为字母表的一个片段 理解“符合性是一种美德，创造性怀疑，幽默被禁，声音哑巴” 当我们主动提取他人的信息时，这个动词是什么？ 几个小时内，难道没有一两只或三只龙能够照顾死亡之军吗？ 内部网络地址包含我的名字 - 有问题吗？ 特朗普总统是否对夏洛茨维尔的“双方”存在暴力？ 这个下拉式反模式有没有名字？ 为什么只有一颗行星才能找到珍贵的矿物？ 一场可怕的可憎的种族如何帮助人类？ for循环工作的初始化和增量部分如何使用逗号？ 有多大的交易阻止在网站上复制粘贴？ 我的USB 3.0线的另一端有什么奇怪的插头？ 如何毒害一个十几米的生物？ 我怎样才能证明这是一个理性的数字？ 

 Language English French Spanish German Portuguese Turkish Vietnamese Malay Italian Dutch Danish Indonesian Norwegian Filipino Polish Finnish Swedish Russian Japanese Korean Hindi Thai Chinese Greek Ukrainian Popular Tags android android-ndk android-studio firebase google-play-games kotlin android-things google-maps google-play google-play-services admob intellij-idea android-tv servicestack-text pycharm google-chrome go android-ui google-cloud-storage google-drive-android-api google-api-java-client google-oauth elasticsearch openthread google-drive-api google-drive-sdk sql-server azure azure-functions phpstorm webstorm android-instant-apps google-plus google-bigquery google-app-engine google-cloud-platform google-cloud-datalab google-cloud-datastore google-api-nodejs-client gcp google-cloud-dataproc google-compute-engine google-chrome-extension google-cloud-dataflow actions-on-google youtube-api google-analytics-api google-api-js-client google-tv artifactory google-maps-api-3 azure-active-directory jetty google-apps-script google-analytics google-places-api google-chrome-devtools google-api-python-client google-api-php-client google-api-dotnet-client google-drive-realtime-api google-slides-api google-custom-search gmail-api google-cloud-endpoints google-tag-manager vs-team-services resharper azure-documentdb aspose google-cloud-messaging teamcity rider rubymine google-cloud-pubsub bintray jcenter google-assistant-sdk google-cloud-sql google-api-ruby-client google-search kubernetes google-translate google-fusion-tables google-geocoding-api google-chrome-app google-container-engine gcloud-cli gce google-hadoop azure-virtual-machine azure-web-sites clion google-cloud-spanner google-maps-android-api-2 google-cloud-bigtable gcloud-node google-prediction gcloud-python nest-api sql-server-2017 dart flutter google-nativeclient servicestack google-cloud-dns vsts google-apps-marketplace google-openid google-classroom google-cloud-kms google-chrome-arc google-api-objc-client google-fit google-search-appliance google-earth-plugin google-static-maps google-latitude eddystone google-beacon-platform azure-webjobs azure-table-storage jfrog-mission-control google-project-tango google-cast android-pay azure-sql-database google-cloud-trace appcode google-glass google-gdk google-mirror-api android-framework azure-cosmosdb newrelic-platform youtrack upsource ormlite-servicestack azure-storage google-cloud-platform google-app-engine google-compute-engine mod-pagespeed github servicestack-auth servicestack-autoquery autoquery-servicestack google-api-cpp-client aspose-slides prior-art-request rejected pocodynamo Copyright © 2017 - 2018 1answer.info - 1answer. About | Privacy Policy. Contact: answercomcontact@gmail.com. jQuery(function (\$) { prettyCode(); scrollToAnchorByQuery(); }); (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) })(window,document,'script','https://www.google-analytics.com/analytics.js','ga'); ga('create', 'UA-23576931-55', 'auto'); ga('send', 'pageview');