Дано целое число n, 0<n<32768. Рассмотрим последовательность Sv(1)Sv(2)Sv(3)…Sv(k)…, где каждая группа цифр Sv(k) состоит из записанных одно за другим чисел от 1 до k. Требуется написать программу, которая определит какая цифра находится на n-ой позиции в построенной последовательности.

Например, первые 84 цифры последовательности выглядят так:
11212312341234512345612345671234567812345678912345 6789101234567891011123456789101112.
var
  k, i, n, m, r: integer;

begin
  readln(n);
  repeat
    inc(k);
    for i := 1 to k do
    begin
      r := i;
      repeat
        r := r div 10;
        inc(m);
      until r = 0;
      if m = n then
      begin
        writeln;
        writeln(i);
        break;
      end;
    end;
  until n = m;
  readln;

end.

Leave a Comment

− 1 = 8