1. 程式人生 > >T^T問題求位數(對數求位數)

T^T問題求位數(對數求位數)

今日水題

描述

T^T這個很像一個流淚的表情是不是!其實,它是T的T次方啦~。
當T比較大的時候T^T會非常大,現在只要你求這個數一共有多少位就可以了。

輸入

包括多組資料,每組資料為一個整數(0<T<2^31)

思路

剛開始看這道題本來想用python,畢竟python的資料型別轉換起來
比較方便,用快速冪求出該數,並轉換為字串型別,在輸出字串
長度即可(噼裡啪啦),but仔細一想其實這是一道高中的數學題,
取該數的log10的值加一。有高中知識可得log10(N^N)=N*log10(N)。

程式碼:

#include<stdio.h>
#include<math.h>  //由於呼叫log函式,所以需要呼叫math標頭檔案。
int main()
{
	double n;
	while(scanf("%lf",&n)!=EOF)
	{
		double ans;
		ans = n * log10(n);
		printf("%ld\n",(long int)ans+1);
	}
	return 0;
}