【杭电】[1060]Leftmost Digit

这里写图片描述

之前宇神提到的一题
取对数之后可以求出
x=nlogn
10的x次方便是n的n次方
所以x的小数部分便是以科学计数法计数的那一串小数
所以取整后便是其首数字

#include<stdio.h>
#include<math.h>
int main() {
    int T;
    scanf("%d",&T);
    while(T--) {
        double n;
        scanf("%lf",&n);
        n*=log10(n);
        n-=(__int64)n;
        printf("%d\n",(int)pow(10.0,n));
    }
    return 0;
}

题目记录:【杭电】[1060]Leftmost Digit

posted @ 2016-03-22 22:03  BoilTask  阅读(9)  评论(0编辑  收藏  举报