POJ高精度练习

在POJ上找了几道高精度的题目来练手,不得不说,高精度的题,用java来实现真的非常简单暴力,直接算就行,没有很强的逻辑~

POJ1001

这道题目的意思呢,是给你一个实数R和一个整数n,然后求R的n次方,原本这道题目是很简单的,主要有一点麻烦的就是细节的处理上,不过好在测试用例都给了,应该注意的点。eg,第二个测试用例如果答案是0.00000xxxxxxx,那么要输出.00000xxxxxxx,这样的格式,还有最后一个测试用例,对于结果后面有一堆0的,要去掉后面这些0.

不过有点遗憾的是,自己写了一个for循环遍历,从后向前找第一个不为0的数,然后结果值就等于他从0到这个不为0的数的下标,但是今天看BigDecimal的时候突然发现了,人家自带一个去除末尾的0的方法,呜呜呜API万岁! 这个伟大的方法就是stripTrailingZeros()

这是不用stripTrailingZeros()方法的

这是用方法做的

 以上可知,用好方法真的很重要啊!!!

POJ1131

 这个题目呢,读懂题目也是非常简单的,但是我刚开始没读懂,

感觉他给的这句话也很奇怪,但是经过我认真研读了两遍之后发现她给的7/8正是0.75小数点后的一位,5/64正是小数点后的第二位,而8和64,分别是8的1次方和8的2次方,所以现在就很清楚了,让我们求给的八进制的小数点后的第几位除以8的几次方,然后将和相加。

也没有什么需要注意的问题,代码逻辑很简单。

POJ2635

 最后一个素数的问题,这个题目呢,是给定一个素数K和一个整数L,他是由两个素数相乘得到的,如果他的两个素数因子都大于L,那么输出“GOOD”,若有一个素数因子小于L,则输出“BAD p”,p是最小的素数因子。

思路是这个借鉴的是某位大佬的先打表,一个数是不是素数,先给他标记出来,遍历的时候直接用就可以了~

   总体来说呢,高精度的题目在省ACM中呢,算是签到题,然后我们做的时候注意好细节就可以了~

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值