いろいろしたいことを試していたら、結果、
配列の引き算になってしまいました。
インデックスソートを行った後、そのリストから削除するインデックス、のリストを受け取って、整列を維持したまま削除する
ということがしたかったです。
いい方法がありますでしょうか?
いろいろしたいことを試していたら、結果、
配列の引き算になってしまいました。
インデックスソートを行った後、そのリストから削除するインデックス、のリストを受け取って、整列を維持したまま削除する
ということがしたかったです。
いい方法がありますでしょうか?
#module //{ 配列a - 配列b : return 引いた後の配列aのサイズ } ( aもbも破壊します) #defcfunc 配列引き算 array a, array b, int sizeA, int sizeB lpoke ln bn = sizeB repeat sizeA i = cnt repeat bn if a(i) = b(cnt){ list(ln) = i: ln+ bn-: b(cnt) = b(bn) break } loop loop list(ln) = sizeA - 1 repeat ln saki = list(cnt) - cnt moto = saki + cnt + 1 memcpy a, a, list(cnt + 1) - moto + 1 << 2, saki << 2, moto << 2 loop return sizeA - ln #global randomize //引かれる配列 repeat 10 a.cnt = rnd(10) mes a.cnt loop //引く配列 pos 30, 0 repeat 10 b.cnt = rnd(10) mes b.cnt loop //結果配列 pos 60,0 repeat 配列引き算(a, b, length(a), length(b)) mes a.cnt loop