2014-11-02 22 views

回答

5

您與2 v\它們配對,檢查它們是否不同~:/,總結+/

+/ 2 ~:/\ a 
3 

2 ~:/\ 1 1 1 _1 _1 _1 1 _1 1 
0 0 1 0 0 1 1 1 

+/2 ~:/\ 1 1 1 _1 _1 _1 1 _1 1 
4 

編輯

或者你可以排隊削減}:和殺頭的a}.並加以比較,但這顯然效率較低。

+/(}: ~: }.) a 
+0

感謝。非常好的節目。 – 2014-11-02 09:37:32

+0

你能解釋爲什麼'+/@(}:〜:}。)'效率低於'+/@(2&(〜:/ \))'嗎? – 2014-11-05 16:02:16

+1

主要是因爲'2 f/\ y'受[特殊代碼](http://www.jsoftware.com/help/release/infix2a.htm)支持。另一件事是斬首是昂貴的(在時間和空間上)。用一個大的'a'來代替標誌變化的數量要比用第一種方法計算更多。你可以製作一個大的隨機'a'('a =:1 _1 {〜?1e6 $ 2')並使用'timespacex'來測試它。 – Eelvex 2014-11-05 16:25:50

1

如果數字可以比圖1和其他_1,

2 ~:&*/\ _2 4 3 _1 _3 1 
1 0 1 0 1 
相關問題