CodeIQ過去問集23:n番目の数字は?
本エントリはCodeIQで2014年7月7日~11月11日に出題された コード銀行:n番目の数字は? という問題を再編集したものです。 ※出題時と記述が一部異なる場合がありますがご了承ください。
n番目の数字は?
【元になる数列】
5, 6, 7, 8, 9, 10, 11, 12, 13, ...
のように、5からはじまる連続した整数があります。 このとき、10以降は2桁以上の数が続きますが、これらの数をすべて1桁ずつ区切っていきます。
5, 6, 7, 8, 9, 1, 0, 1, 1, 1, 2, 1, 3, ...
このような数列について考えてください。
【問題】
上記の数列について、前からn番目の数字を効率よく求めるプログラムを書いてください。 (先頭を1番目とします)
【入力】
テキストファイルに、いくつかの整数値が書かれています(改行区切り)。 各整数を入力nとして、実行結果を出力してください。 (例)sample.in.txt
1 2 3 4 5 6 7 8 9 10 11
【出力】
入力毎に、改行区切りで1ケタの整数を出力してください。 (例)sample.out.txt
5 6 7 8 9 1 0 1 1 1 2
【解答方法】
nthdigit.zipをダウンロードしてください。 中には以下のファイルが含まれています。
- sample.in.txt, sample.out.txt
例で示したデータと、その解答です。
- testdata.in.txt
これを入力として、正しい実行結果が得られるプログラムを書いてください。
(解答・解説は後日)