HDU 1018 Big Number
2017-01-20 20:33
471 查看
题意:输入一个n,算出n!的位数。
思路:直接套用公式。
例:123456789=1.23456789*10^8
log10(123456789)=log10(1.23456789*10^8)=log10(1.23456789)+log10(10^8)=8
.
由此可推导n!的位数=log10(n)+1。
思路:直接套用公式。
例:123456789=1.23456789*10^8
log10(123456789)=log10(1.23456789*10^8)=log10(1.23456789)+log10(10^8)=8
.
由此可推导n!的位数=log10(n)+1。
#include<iostream> #include<cmath> using namespace std; int main() { int n, x; double y; cin >> n; while (n--) { y = 0; cin >> x; for (int i = 1; i <= x; i++) { y = y + log10(i*1.0); } cout << (int)y+1 << endl; } return 0; }
相关文章推荐
- hdu 1018 Big Number 数学结论
- HDU 1018-Big Number(数学)
- HDU 1018 Big Number(求n!的位数)
- hdu 1018 big number 求解
- hdu 1018 Big Number
- 【HDU】 1018 Big Number
- Big Number(http://acm.hdu.edu.cn/showproblem.php?pid=1018)
- hdu 1018 Big Number(n!求位数)
- HDU 1018 Big Number(数学知识)
- hdu 1018 big number (有个组合公式)
- 【再谈阶乘的近似解】HDU 1018——Big Number
- hdu1018 big number
- hdu 1018 Big Number (数论)
- HDU 1018 Big Number (log函数求数的位数)
- HDU 1018 Big Number
- hdu 1018 Big Number(纯数学公式)
- hdu 1018 Big Number(求阶乘的位数)
- hdu 1018 Big Number
- HDU1018 Big Number(求阶乘位数)
- HDU 1018 Big Number