Каждый год сотни людей приезжают в летнюю школу, чтобы
изучать новые алгоритмы и решать сложные задачи. В этом году вы приехали в
летнюю школу в первый раз, и вам поручили решить следующую задачу.
Все целые числа начиная с 1 были выписаны в одну
строку «123456789101112131415...». По данному числу n выведите цифру на n-й
позиции (используется нумерация с 1).
Вход. В единственной строке входных данных записано целое
число n (1 ≤ n ≤ 1000) –позиция
цифры, которую вам требуется вывести.
Выход. Выведите n-ую цифру получившейся строки.
Пример входа
1
3
Пример
выхода 1
3
Пример входа
2
11
Пример
выхода 2
0
строки
Поскольку n не
большое (1 ≤ n ≤ 1000),
то сгенерируем строку, содержащую требуемый ряд чисел. Затем из этой строки выведем n-ый символ.
Реализация алгоритма
#include <cstdio>
#include <string>
#include <algorithm>
using namespace
std;
int i, n;
string s = " ";
char p[10];
int main(void)
{
scanf("%d", &n);
for(i = 1; i <= n; i++)
{
sprintf(p,"%d",i);
s = s + (string)p;
}
printf("%c\n",s[n]);
return 0;
}