2010-04-15 3 views
10

Для заданных целых чисел N и K (1 < = N, K < = 2000000000) вам необходимо найти количество цифр N^K.Число цифр для N ** K

Есть ли какая-нибудь формула или что-то еще? Потому что я пытался его решить, просто включив N ** K, но он не работает для больших значений, и программа просто зависает из-за вычислений. Я ищу какой-то быстрый способ, может быть, какую-то математическую формулу, как я уже говорил.

+4

Благодарим за то, что вы являетесь школьной штукой. – clahey

+0

'bc',' dc' и Python - гораздо более удобные калькуляторы большого числа, чем C++. – Potatoswatter

+0

Я скучаю по колледже. –

ответ

15

10 базовый журнал N должен указывать количество цифр в нем. Этого должно быть достаточно, как подсказка :-)

1

Попытайтесь придумать математическую операцию, в которой указывается количество цифр числа. Примените это к N ** K и посмотрите, не можете ли вы упростить формулу.

2

Подсказки: Log (X^Y) = Y * Log (X)

следующие номера имеют 4 цифры; целочисленная часть десятичного логарифма равна 4 - 1 = 3. Журнал 1000 = 3, журнал (9999) = 3,9999565683801924896154439559762

Смежные вопросы