Информатика, вопрос задал darimabadeeva03 , 7 лет назад

Карл Гаусс известен тем, что в юные годы сумел быстро решить задачку своего учителя, которую тот предложил ученикам, чтобы занять их на продолжительное время: найти сумму всех натуральных чисел от 1 до 100.

Говорят, что сразу после этого Карл решил и вторую хитрую задачу, так и не дав своему преподавателю насладиться тишиной на уроке.

Дано натуральное число n. Из него вычитают число, равное длине числа n. Из результата опять вычитают число, равное его длине и так далее. Сколько потребуется операций, чтобы получилось число 0?

Попробуйте и вы справиться с этой задачей.

Входные данные

Программа получает на вход одно натуральное число n (1 ≤ n ≤ 1016).

Обратите внимание, что при заданных ограничениях для хранения ответа необходимо использовать 64-битный тип данных, например long long в C++, int64 в Pascal, long в Java.

Выходные данные

Выведите одно натуральное число — ответ на вопрос задачи.

Система оценки

Решения, верно работающие при 1 ≤ n ≤ 99, получат не менее 20 баллов.

Решения, верно работающие при 1 ≤ n ≤ 105, получат не менее 60 баллов.

Пример

Ввод

Вывод

Пояснение

13

11

В примере дано n = 13. Это двузначное число, поэтому после первой операции результат будет равен 13 − 2 = 11.
Число 11 тоже двузначное. После второй операции результат будет равен 11 − 2 = 9.
Число 9 однозначное. Будем вычитать из чисел по 1, после ещё девяти операций получим ноль.
Всего 11 операций.

Сдать решение

Ответы на вопрос

Ответил ssatonin92
0

Ответ:

using System;

public class HelloWrold

{

  static void Main()

  {

      string input = Console.ReadLine();

      long number =

          Convert.ToInt64(input);

      long length;

      long answer = 0;

      while (number > 0)

      {

          length =number.ToString().Length;

          answer++;

          number -= length;

      }

      Console.Write(answer);

  }

}      

Объяснение:

Ответил Fedy16
0

Python:

n = int(input())  

count = 0  

while n > 0:  

  n -= len(str(n))  

  count += 1  

print(count)

Новые вопросы