- masashinakata
- 1464
- 1
- 0
- 0
yowa
@yowa
寄せるのが √N 個なのは、(X=1 で) m 個寄せるのに O(m^2) のコストかかるから、と理解。 (その理屈だと√Nの(何かしらの)定数倍になりそうだし、 X≠1 だと 1/2 乗じゃない何かになりそうだけど、しーらない)
2020-09-24 13:27:35
yowa
@yowa
隣接要素の差を減らすヤツ、他の作業中にチラっと浮かんだことが何度かあったけど、その作業が一区切りつく前に頭から消えちゃって、結局実装するには至らなかった
2020-09-24 13:29:56
c7c7
@C7C7LL
MM120 1、各数字の最終位置と、マージする順番を山登り (Xが小さい時用) 2、幅10以下に関して、(転倒数^2)/pow(幅,X)が最小になる操作を貪欲に繰り返す (Xが大きい時用) の2つを実装してみたけどダメでした。 どうやって、良い感じに巻き込みながら回転するかを考え始めたら頭壊れました。
2020-09-24 13:39:40
yowa
@yowa
出力例 (-seed 1000 -X 1.0 -N 200 -K 200 / Score = 2865.0) pic.twitter.com/2e9PY9Fx6M
2020-09-24 14:37:25
拡大
yowa
@yowa
あー 寄せるヤツを0、それ以外を1とすることで K=2 の問題に置き換えられて、K=2 で効率的に解く方法を適用すると、O(m^2) も掛からなくなって普通に同じサイズで二分割の分割統治ができるんかー
2020-09-24 16:42:59
yowa
@yowa
↓が、Score = 2427.0 になった twitter.com/yowa/status/13… pic.twitter.com/SxpdI6Cb21
2020-09-24 16:48:31
拡大