前問で作成したプログラムを改変し，複数の結果に対応するようにしなさい．
ただし，下記のことを順守すること．
1. 関数 binary_search() の内部，および，指示で示された範囲のみ改変する
2. 関数 binary_search() 内の print()，print_ints()，print_strs() の行は
   必要に応じて移動やコピーをしてもよい（インデント変更を含む）が
   中身（引数）の改変はしない（探索の途中が正しく出力されるよう）
3. 関数 binary_search() はlist型のデータを戻すようにする
4. 結果表示の順序は元のデータのインデックスの昇順にする
5. sort() や sorted() など整列の関数・メソッドを利用しない
