POJ 1001 计算小数n次幂准确数值
2014-09-18 18:53
295 查看
1001 Exponentiation
计算小数n次幂准确数值
1.不能直接使用小数乘法,因为有省略小数位数
2.不能用整数乘法,数值可能超过long long的范围
解决方法:用数组存储,按位乘。
核心算法,按位乘法。
b的n次方乘法在计算过程中,有两值相乘且要存储结果,因此需要三个数组。优化?
10进制如下,其他进制将10替换
源码地址:https://github.com/jianglj/POJ
计算小数n次幂准确数值
1.不能直接使用小数乘法,因为有省略小数位数
2.不能用整数乘法,数值可能超过long long的范围
解决方法:用数组存储,按位乘。
核心算法,按位乘法。
b的n次方乘法在计算过程中,有两值相乘且要存储结果,因此需要三个数组。优化?
10进制如下,其他进制将10替换
for(k=0; k<n-1; k++) { for(i = 0; i < ka; i++) { for(j = 0; j < kb; j++) { r[i + j] = r[i + j] + a[i] * b[j]; r[i + j +1] = r[i + j +1] + r[i + j]/10; r[i + j] = r[i + j] % 10; } } for(i = 0; i<ka; i++) { a[i] = r[i]; r[i] = 0; } }
源码地址:https://github.com/jianglj/POJ
相关文章推荐
- POJ 3575(计算几何与二分-无尽的小数处理)
- 计算出的多小数位的数值控制小数位的方法
- 高精度乘法计算 poj1001 Exponentiation C代码
- [转]POJ 1001 Exponentiation Java大数处理高精度小数
- java用double和float进行小数计算精度不准确
- 花了近一天的时间写了小数的高精度乘法,并通过了POJ1001,颇有成就感。
- 如果x的x次幂结果为10(参见【图1.png】),你能计算出x的近似值吗? 显然,这个值是介于2和3之间的一个数字。 请把x的值计算到小数后6位(四舍五入),并填写这个小数值。 注意:只填写一
- java用double和float进行小数计算精度不准确
- [POJ]1001 乘方计算
- javascript在计算浮点数(小数)不准确,解决方案
- 计算出的多小数位的数值控制小数位的方法
- POJ1001高精度小数运算
- poj 1001 求一个小数的N次方
- android 解决计算数值不准确的问题
- shell的数值计算,小数计算
- poj 1001 -- Exponentiation (大数计算,模拟)
- poj 1001 uva 748 Exponentiation(高精度小数乘法)
- POJ1001--Exponentiation(幂计算)翻译
- POJ1001 且适合带小数点大数的幂(R^N)
- js 小数 计算 结果 不正确 不准确