Poj1131-Octal Fractions
| Time Limit: 1000MS | Memory Limit: 10000K | |
| Total Submissions: 6669 | Accepted: 3641 |
Description
Write a program to convert octal numerals between 0 and 1, inclusive, into equivalent decimal numerals.
Input
Output
0.d1d2d3 ... dk [8] = 0.D1D2D3 ... Dm [10]
where the left side is the input (in octal), and the right hand side the decimal (base 10) equivalent. There must be no trailing zeros, i.e. Dm is not equal to 0.
Sample Input
0.75
0.0001
0.01234567
Sample Output
0.75 [8] = 0.953125 [10]
0.0001 [8] = 0.000244140625 [10]
0.01234567 [8] = 0.020408093929290771484375 [10]
用java的大数,感觉挺好
import java.util.*;
import java.io.*;
import java.math.*;
import java.text.*;
public class Main {
public static void main(String[] args){
Scanner sc = new Scanner(new BufferedInputStream(System.in)); ///用BufferedInputStream据说能快点
BigDecimal ans, t, tmp;
while(sc.hasNext()){
String st = sc.nextLine(); ///字符串输入
t = BigDecimal.valueOf(1);
ans = BigDecimal.valueOf(0); int i, sta = st.indexOf('.');//找到第一次出现'.' 的位置
for(i = sta+1; i < st.length(); ++i){ ///获取字符串长度只能用length()方法
tmp = BigDecimal.valueOf(st.charAt(i) - '0'); //charAt()获取当前位置的字符
t = t.divide(new BigDecimal("8")); //大数只能和大数进行运算,Int只能与Int String只能和String
tmp = tmp.multiply(t);//乘
ans = ans.add(tmp);//加
}
System.out.println(st + " [8] = " + ans + " [10]"); ///也可用System.out.printf();
}
}
}
Poj1131-Octal Fractions的更多相关文章
- Octal Fractions
Octal Fractions Time Limit: 1 Sec Memory Limit: 64 MBSubmit: 149 Solved: 98 Description Fractions ...
- Octal Fractions java秒 C++
Octal Fractions 题目抽象: 将八进制小数转换成十进制小树.小数的为数很大. 可以用java 中的BigDeciaml 秒掉. time:297ms 1 import java. ...
- TOJ 2861 Octal Fractions
描述 Fractions in octal (base 8) notation can be expressed exactly in decimal notation. For example, 0 ...
- hdu 1376 Octal Fractions
刚开始做这题时,用的是0.75[8]=(7/8+5/64)[10]这个,但是总是WA…………无语了…… 后来看别人的解题报告,知道了另外一个就是0.75[8]=((5/8+7)/8)[10],从低位向 ...
- POJ Octal Fractions(JAVA水过)
题目链接:id=1131" target="_blank">CLICK HERE~ 尽管java一下模拟水过,可是我看到别人的一段奇妙代码,贴出和大家共享. imp ...
- poj 1131 Octal Fractions(高精度小数进制转换) Java
虽然题目那么长其实就是把8进制的浮点数转换成10进制,为了练习Java Biginteger 类 我这里用的是Java,也可以用数组模拟. import java.math.BigDecimal; i ...
- POJ题目细究
acm之pku题目分类 对ACM有兴趣的同学们可以看看 DP: 1011 NTA 简单题 1013 Great Equipment 简单题 102 ...
- HOJ题目分类
各种杂题,水题,模拟,包括简单数论. 1001 A+B 1002 A+B+C 1009 Fat Cat 1010 The Angle 1011 Unix ls 1012 Decoding Task 1 ...
- [Hanani]JAVA大数相关学习记录
1.Basic remains 题目链接 涉及内容: |大数读入|大数模|大数进制读入时转化为十进制|大数输出时转化为其他进制输出| import java.io.*; import java.mat ...
随机推荐
- setw()函数
- 关于快捷键 Ctrl+Alt+[方向键] 的知识
在用PS作图时使用 Ctrl+Alt+[方向键] 组合建时屏幕莫名翻转, 平时电脑懒得维护所以略卡,我不会说一般早上起床摁了开机去上完厕所回来还--咳咳 刚按下时瞬间一黑,再黑,,继续黑--真是大吃 ...
- Yslow网站性能优化工具
Yslow是一款网站性能优化的插件:
- Oracle Redhat5.5
http://blog.csdn.net/yakson/article/details/9012129 http://www.cnblogs.com/cnmarkao/p/3670153.html h ...
- C#的事件
using System; using System.Collections; using System.Collections.Generic; using System.IO; namespace ...
- PHP获取远程图片并调整图像大小(转)
<?php /** * *函数:调整图片尺寸或生成缩略图 *修改:2013-2-15 *返回:True/False *参数: * $Image 需要调整的图片(含路径) * $Dw=450 调整 ...
- MySQL中TIMESTAMPDIFF和TIMESTAMPADD函数的用法
在MySQL应用时,经常要使用这两个函数TIMESTAMPDIFF和TIMESTAMPADD. 一,TIMESTAMPDIFF 语法: TIMESTAMPDIFF(interval,datetime_ ...
- [Tools] Eclipse使用小技巧-持续更新
[背景] 使用之中发现一些eclipse使用的小技巧,记录下来供以后查阅 Eclipse保存preferences,并导入到其他workspaces The Export wizard can b ...
- POJ 1984 Navigation Nightmare 带全并查集
Navigation Nightmare Description Farmer John's pastoral neighborhood has N farms (2 <= N <= ...
- python学习第三天
小结: 总体上,python是解释型语言,开源比较好,速度较慢,装逼神器,解释器较常用的是CPython,安装后python进入运行环境 exit()退出 第一个hello world : print ...