レス書き込み
スレへ戻る
写
レス栞
レス消
プログラミングのお題スレ Part22
PC,スマホ,PHSは
ULA
べっかんこ
公式(スマホ)
公式(PC)
で書き込んでください。
名前
メール
引用切替:
レスアンカーのみ
>>781 > >>771 > Rust > 既に色々と出ているため別の観点からのコード > 一時作業メモリ最小 & ソートは1回 & ジェネリック > > fn f<T: std::cmp::Ord>(input: &[T]) -> Vec<usize> { > let len = input.len(); > > // ポジションのリスト [0, 1, 2, 3, ... , len-1] を作成 > let mut pos_list: Vec<usize> = (0..len).collect(); > // inputを利用してそのポジションだけをソート > pos_list.sort_by_key(|&pos| &input[pos]); > > // 返すべきランクのリスト > let mut rank_list: Vec<usize> = vec![0; len]; > // ポジション⇔ランクは逆写像なのでソートは不要 > (0..len).for_each(|rank| rank_list[pos_list[rank]] = rank); > rank_list > } > > fn main() { > assert_eq!(f(&[1, 100, 10, 10000, 1000]), [0, 2, 1, 4, 3]); > assert_eq!(f(&[3, 1, 4, 1, 5, 9, 2]), [3, 0, 4, 1, 5, 6, 2]); > assert_eq!(f(&[0, 1, 0, 1, 0, 1, 0, 1]), [0, 4, 1, 5, 2, 6, 3, 7]); > }
ローカルルール
SETTING.TXT
他の携帯ブラウザのレス書き込みフォームはこちら。
書き込み設定
で書き込みサイトの設定ができます。
・
ULA
・
べっかんこ(身代わりの術)
・
べっかんこ(通常)
・
公式(スマホ)
・
公式(PC)[PC,スマホ,PHS可]
書き込み設定(板別)
で板別の名前とメールを設定できます。
メモ帳
(0/65535文字)
上
下
板
覧
索
設
栞
歴
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.022s