[蓝桥杯2016决赛]阶乘位数

2020-03-17  本文已影响0人  Vincy_ivy

题目描述

9的阶乘等于:362880
它的二进制表示为:1011000100110000000
这个数字共有19位。
请你计算,9999 的阶乘的二进制表示一共有多少位?

输出

输出一个整数表示答案


#include<iostream>
#include<ctime>
#include<cmath>
#include<bits/stdc++.h>
using namespace std;

int main(){
    double sum=0.0;
    for(int i=1;i<=9999;i++){
        sum+=log2(i);
    }
    cout<<(int)(floor(sum))+1;
    return 0;
}
上一篇下一篇

猜你喜欢

热点阅读