challenge データの整列

(x, y) の座標情報を以下の2種類の方法で整列する機能を実現してください。

  • (x, y) の辞書順(まず x で昇順に整列して、x が同じデータに対して y で昇順に整列する)
  • (0, 0) からの距離の昇順

データの表現方法はタプルなり構造体/オブジェクトなり各自で適当に選んで下さい。

Posted feedbacks - J

そのつもりはなかったけど、ペアのデータだけでなく
複数個のデータの組でも使えた。

   data1=.5 2$?#~10
   ('data1';'dic';'dis'),: data1; (dic ; dis) data1 
+-----+---+---+
|data1|dic|dis|
+-----+---+---+
| 6 1 |0 8|6 1|
| 0 8 |0 9|5 4|
| 8 7 |5 4|0 8|
| 0 9 |6 1|0 9|
| 5 4 |8 7|8 7|
+-----+---+---+

   data2=.5 3$?#~15
   ('data2';'dic';'dis'),: data2; (dic ; dis) data2 
+--------+--------+--------+
| data2  |  dic   |  dis   |
+--------+--------+--------+
| 2  4  5| 1  4  6| 2  4  5|
|14  1  8| 2  4  5| 1  4  6|
|11 10 13| 4  7  1| 4  7  1|
| 1  4  6|11 10 13|14  1  8|
| 4  7  1|14  1  8|11 10 13|
+--------+--------+--------+
1
2
dic =: /:~
dis =: 3 :'y /: +/|:*: y'

Index

Feed

Other

Link

Pathtraq

loading...