POJ 1131-Octal Fractions(高精度)

题目链接:传送门

题意:小数八进制转成10进制。。BigDecimal水过去。。

import java.io.*;
import java.util.*;
import java.math.*;
import java.text.*;
public class Main {
    public static void main(String[] args) {
        Scanner in=new Scanner(System.in);
        String s;
        while(in.hasNext()){
            s=in.next();
            int len=s.length();
            BigDecimal ans=BigDecimal.ZERO;
            for(int i=2;i<len;i++){
            	BigDecimal a=new BigDecimal(s.charAt(i)-'0');
            	BigDecimal b=new BigDecimal(8);
            	ans=ans.add(a.divide(b.pow(i-1)));
            }
            System.out.println(s+" [8] = "+ans+" [10]");
        }
    }
}
时间: 2024-08-01 22:42:57

POJ 1131-Octal Fractions(高精度)的相关文章

POJ 1131 Octal Fractions (Java大数,八进制转十进制)

Octal Fractions Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 6959   Accepted: 3825 Description Fractions in octal (base 8) notation can be expressed exactly in decimal notation. For example, 0.75 in octal is 0.953125 (7/8 + 5/64) in d

POJ Octal Fractions(JAVA水过)

题目链接:CLICK HERE~ 虽然java一下模拟水过,但是我看到别人的一段神奇代码,贴出和大家共享. import java.math.*; import java.util.*; class Main{ public static void main(String args[]){ Scanner cin = new Scanner(System.in); BigDecimal Eight = new BigDecimal(8); while(cin.hasNext()){ String

Octal Fractions 未完成

1 #include<stdio.h> 2 #include<string.h> 3 #include<stdlib.h> 4 void divi(int p[],int x,int *len) 5 { 6 int temp=0,i,j; 7 for(i=0;i<*len+3;i++) 8 { 9 temp=temp*10+p[i]; 10 p[i]=temp/x; 11 temp%=x; 12 } 13 14 for(i=*len+3;i>=0;i--)

Octal Fractions java秒 C++

Octal Fractions 题目抽象:   将八进制小数转换成十进制小树.小数的为数很大. 可以用java  中的BigDeciaml 秒掉.  time:297ms 1 import java.math.*; 2 import java.util.*; 3 import java.io.*; 4 import java.text.*; 5 6 public class Main 7 { 8 static int MS=3005; 9 public static void main(Stri

poj 2305 Basic remains 高精度取余

题意: 裸的高精度取余. 分析: http://blog.csdn.net/sepnine/article/details/44092055有poj 1220任意进制转换的代码,这题用到其中的一部分,可作对比. 代码: //poj 2305 //sep9 #include <iostream> using namespace std; int b,m; char s1[1024],s2[16],ans[16]; int p[1024]; int main() { while(scanf(&qu

POJ 2635-The Embarrassed Cryptographer(高精度求模+同余模定理)

The Embarrassed Cryptographer Time Limit:2000MS     Memory Limit:65536KB     64bit IO Format:%I64d & %I64u Submit Status Practice POJ 2635 Appoint description:  System Crawler  (2015-05-28) Description The young and very promising cryptographer Odd E

POJ 2084 Catalan数+高精度

POJ 2084 /**************************************** * author : Grant Yuan * time : 2014/10/19 15:42 * source : POJ 2084 * algorithm: Catalan数+高精度 * ***************************************/ import java.io.*; import java.math.*; import java.util.*; publ

POJ 2506 Tiling(高精度+递推)

高精度模版(bin神的) /* * 高精度,支持乘法和加法 */ struct BigInt { const static int mod = 10000; const static int DLEN = 4; int a[600],len; BigInt() { memset(a,0,sizeof(a)); len = 1; } BigInt(int v) { memset(a,0,sizeof(a)); len = 0; do { a[len++] = v%mod; v /= mod; }w

POJ 1001 解题报告 高精度大整数乘法模版

题目是POJ1001 Exponentiation  虽然是小数的幂 最终还是转化为大整数的乘法 这道题要考虑的边界情况比较多 做这道题的时候,我分析了 网上的两个解题报告,发现都有错误,说明OJ对于错误的判断还不够严厉. 对边界情况的讨论其实应该是思维严密的表现,当然这并不能表明我写的一点错误都没有,只是多多分析一下还是很有好处的. #include <iostream> #include <fstream> #include <string> #include &l

POJ 1001 Exponentiation 求高精度幂

Exponentiation Time Limit: 500MS   Memory Limit: 10000K Total Submissions: 147507   Accepted: 36006 Description Problems involving the computation of exact values of very large magnitude and precision are common. For example, the computation of the n