2011.10.23 poj1423Big Number 伪解题报告

做了一道巨水,巨坑人的题!

首先自己按照LRJ上的那道超大数阶乘把n!算出来了,存在字符串里,然后输出有效位长度,结果毫无疑问TLE!

然后读了一个博客,找到一个公式:

n!=n*(n-1)*(n-2)*…..*1

         n的位数=[lg(n)]+1;
所以:n!的位数=[lg(n*(n-1)*(n-2)*…..*1)]+1=[lgn+lg(n-1)+lg[n-2]+….+lg1]+1;
很快把程序写出来,提交,依旧TLE! 

这个博客http://hi.baidu.com/silverxinger/blog/item/ba93a015747c1a1eb8127b5f.html

里说到了《圣经---计算机程序设计艺术》里提到的一个公式,对这道题的解法至关重要。

看完那个没什么规律的变态公式,然后直接代公式,提交AC。

哎,坑人。

归根结底:自己水平还是不够。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值