您的位置:首页 > 编程语言 > Java开发

HDU-4788 Hard Disk Drive(java)

2013-11-24 19:52 267 查看
用java做就是水题了。

import java.math.BigDecimal;
import java.text.DecimalFormat;
import java.util.*;
import java.io.*;

public class Main {

public static int get(char c)
{
if(c=='B') return 0;
if(c=='K') return 1;
if(c=='M') return 2;
if(c=='G') return 3;
if(c=='T') return 4;
if(c=='P') return 5;
if(c=='E') return 6;
if(c=='Z') return 7;
if(c=='Y') return 8;
return 0;
}

public static void main(String[] args) {
int t,d,num;
int test=0;
char c='0';
String s;

Scanner input=new Scanner(System.in);

DecimalFormat df=new DecimalFormat("0.00%");
//String pattern="0.00%";
//df.applyPattern(pattern);

t=input.nextInt();
while(t-->0){
test++;
s=input.next();
num=0;
int len=s.length();
for(int i=0;i<len;i++){
if(s.charAt(i)!='['){
num=num*10+s.charAt(i)-'0';
}
else{
c=s.charAt(i+1);
break;
}
}
d=get(c);
BigDecimal ans=BigDecimal.valueOf(1);
BigDecimal k1=BigDecimal.valueOf(10),k2=BigDecimal.valueOf(2);
k1=k1.pow(3*d).multiply(BigDecimal.valueOf(num));
k2=k2.pow(10*d).multiply(BigDecimal.valueOf(num));
k1=k1.divide(k2);
ans=ans.subtract(k1);
System.out.println("Case #"+test+':'+' '+df.format(ans));
};

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  数学