求N^N最左边的数,吸纳然要用log处理
N^N=ans;
log10(ans)=log10(N^N);
ans=10^(NlogN);
显然NlogN是实数,又因为10的整数次幂的最左边为1,所以只要判断小数部分就可以了
#include"stdio.h"
#include"string.h"
#include"math.h"
int main()
{
int n;
long long m;
double ans;
while(scanf("%d",&n)!=-1)
{
ans=n*log10(double(n));
m=(long long)ans;
ans=ans-m;
m=(long long)pow(10.0,ans);
printf("%lld\n",m);
}
return 0;
}