hihoCoder 二进制小数 BigDecimal使用
来源:互联网 发布:哈萨克歌曲软件baigie 编辑:程序博客网 时间:2024/05/23 21:17
二进制小数
时间限制:10000ms
单点时限:1000ms
内存限制:256MB
- 样例输入
30.50.750.3
- 样例输出
0.10.11NO
- 要清楚,小数的从十进制转二进制不是取余而是乘法。
import java.math.BigDecimal;import java.util.Scanner;public class Main {public static void main(String args[]){Main test=new Main();test.start();}public void start(){Scanner scan=new Scanner(System.in);int num=scan.nextInt();for(int i=0;i<num;i++){calculate(new BigDecimal(scan.next()),0);if(result.equals("NO")){System.out.println(result);}elseSystem.out.println("0."+result.substring(1));result="";}}String result="";public void calculate(BigDecimal a,int a1){if(a1>5000){result="NO";return;}if(a.compareTo(BigDecimal.ZERO)==0){return;}if(a.compareTo(BigDecimal.ONE)>=0){a=a.subtract(BigDecimal.ONE);result+=1;}else{result+=0;}calculate(a.multiply(BigDecimal.valueOf(2)),++a1);}}
总结:对于BigDecimal没有toString(int)这个方法,得注意一下以后就得自己转二进制了。- 记录一下方法。
BigDecimal
stripTrailingZeros()
返回数值上等于此小数,但从该表示形式移除所有尾部零的 BigDecimalString
toPlainString()
返回不带指数字段的此 BigDecimal 的字符串表示形式。BigDecimal(BigInteger unscaledVal, int scale, MathContext mc)
将 BigInteger 非标度值和 int 标度转换为 BigDecimal(根据上下文设置进行舍入)。ROUND_HALF_DOWN
向“最接近的”数字舍入,如果与两个相邻数字的距离相等,则为上舍入的舍入模式。double
doubleValue()
将此 BigDecimal 转换为 double。
描述
给定一个十进制小数X,判断X的二进制表示是否是有限确定的。
例如0.5的二进制表示是0.1,0.75的二进制表示是0.11,0.3没有确定有限的二进制表示。
输入
第一行包含一个整数 T (1 ≤ T ≤ 10),表示测试数据的组数。
以下T行每行包含一个十进制小数 X (0 < X < 1)。 X一定是以"0."开头,小数部分不超过100位。
输出
对于每组输入,输出 X 的二进制表示或者NO(如果 X 没有确定有限的二进制表示)。
阅读全文
0 0
- hihoCoder 二进制小数 BigDecimal使用
- hihoCoder 二进制小数 BigDecimal类
- [hihoCoder] 二进制小数 解题报告
- hihoCoder 第157周 二进制小数
- 使用bigdecimal来保留小数
- 使用BigDecimal处理Java中的小数
- java中使用BigDecimal保留小数位数
- 使用BigDecimal进行精确小数计算
- 使用new BigDecimal(String val)来构造小数
- java保留2位小数及BigDecimal使用
- 二进制小数
- 二进制小数
- 二进制小数
- 二进制小数
- 二进制小数
- 二进制小数
- BigDecimal设置小数位数
- JAVA BigDecimal 小数处理
- 【MyBatis学习03】原始dao开发方法及其弊端
- MySQL存储过程和函数的区别与优缺点
- CSS 后代选择器和权值计算
- 暑假第一周 D CodeForces 660 B.
- 3. 什么是JSR参考实现?
- hihoCoder 二进制小数 BigDecimal使用
- 网络基础TCP/IP通信协议
- hdu1584 蜘蛛牌dfs
- 634. Find the Derangement of An Array
- 组合问题的算法实现
- CSS 盒子模型
- 【MyBatis学习04】mapper代理方法开发dao
- 数据结构(Java)--双链表
- java种复制文件的N种方法