南阳OJ 数字分隔(二)
来源:互联网 发布:sql语句数字进行计算 编辑:程序博客网 时间:2024/06/01 21:40
数字分隔(二)
时间限制:1000 ms | 内存限制:65535 KB
难度:3
描述
在一个遥远的国家,银行为了更快更好的处理用户的订单,决定将一整串的数字按照一定的规则分隔开来,分隔规则如下:1、实数的整数部分按照每三个数字用逗号分隔开(整数部分的高位有多余的0时,需先将多余的0过滤后,再进行数字分隔,如:0001234567 输出结果为1,234,567.00)2、小数部分保留两位小数(四舍五入)3、如果该数是负的,则在输出时需用括号将分隔后的数字括起来,例如:-10005.1645的输出结果为(10,005.16)
输入
多组测试数据(以eof结尾),每行输入一个实数n(n的位数小于100)
输出
输出分隔后的结果
样例输入
00012345670.0000-10005.1645
样例输出
1,234,567.000.00(10,005.16)
来源
calamity_coming
上传者
ACM_孙毓阳
解题思路 : 直接使用DecimalFormat格式化输出输入字符串的信息
代码如下
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.math.BigDecimal; import java.text.DecimalFormat; public class Main { public static void main(String[] args) throws IOException { DecimalFormat format = new DecimalFormat("#,##0.00"); BigDecimal decimal = null; BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); String temp = null; while( (temp = reader.readLine()) !=null){ boolean flag = true; //标记正负 if(temp.startsWith("-")){ flag = !flag; temp = temp.substring(1); } decimal = new BigDecimal(temp); if(flag){ System.out.println(format.format(decimal)); }else{ System.out.println("("+format.format(decimal)+")"); } } reader.close(); } }
阅读全文
0 0
- 南阳oj 1092 数字分隔(二)
- 南阳OJ 数字分隔(二)
- 南阳acm 数字分隔(二)
- 南阳1092-数字分隔(二)
- 数字分隔(二)
- 数字分隔(二)
- 数字分隔(二)
- 数字分隔(二)
- 数字分隔(二)
- 数字分隔(二)
- NYOJ1092 数字分隔(二)
- 68.数字分隔(二)
- nyoj1092数字分隔(二)
- 南阳OJ 116-士兵杀敌(二)
- 南阳 oj 176 整数划分(二)
- 南阳oj 12 喷水装置(二)
- 南阳oj[116]士兵杀敌(二)
- 士兵杀敌(二)||南阳OJ
- ajax用法笔记
- 11.计时器Chronometer控件的应用实例
- ssm搭建
- python3.6.1安装失败:Service Pack 1 is required to continue installation
- codeforces 835a 之 Key races
- 南阳OJ 数字分隔(二)
- 在线man
- MyBatis逆向工程 & 生成的Mapper的使用方法
- c++STL之multimap
- hosts 文件目录
- BP 维护客户信贷管理数据
- python
- Android Fragment白页解决方案
- 欢迎使用CSDN-markdown编辑器