この手の質問はアルゴリズム系の板で聞いたほうがいいんじゃないか?