スレ立てるまでもない質問はここで 128匹目
■ このスレッドは過去ログ倉庫に格納されています
0264デフォルトの名無しさん
2013/09/05(木) 19:10:09.16def niwatori(key_str, input_str)
order_by_char = key_str.chars.inject([{}, 1]) {|(hash, n), x|
[hash.merge(x => n), n + 1]
}[0]
input_str.chars.sort { |x, y|
order_x = order_by_char[x]
order_y = order_by_char[y]
raise unless order_x && order_y
order_x <=> order_y
}.join
end
niwatori "にわとり", "りとわとににりとわにわとりわりに"
#=> "ににににわわわわととととりりりり"
def bakatori(key_str, input_str)
key_str * (input_str.length / key_str.length)
end
bakatori "にわとり", "りとわとににりとわにわとりわりに"
#=> "にわとりにわとりにわとりにわとり"
=begin
正しいソート(>>256)の niwatori、間違ったソート(>>249)の bakatori
あなたが欲しかったのは、どちらのソート?
=end
■ このスレッドは過去ログ倉庫に格納されています