>>316
アルゴリズム組んでみれば、どれだけ複雑か分かるだろう。
全部の科目について外れ1位の処理なんてしてたら・・・
ある人は科目AとBをこの希望順で登録、別の人は科目BとAとCを登録
学生がこの2人だけなら前者がA、後者はBとCを受ければいいんだが、ン万人でそれをやるとなるとなあ。
//希望者全員に第1希望を割り当てる。競合起こったら外れ1位処理をする。
 ここまでで全員分を参照した訳だ。
 その次に、第2希望を割り当てる。外れ2位処理も行う。ここまでで全学生の希望を2巡して参照した。
 第10希望を出している人もいるから、全学生の分を10巡して参照する羽目になるだろう。