HDUOJ----(4788)Hard Disk Drive

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 252    Accepted Submission(s): 144

Problem Description

Yesterday your dear cousin Coach Pang gave you a new 100MB hard disk drive (HDD) as a gift because you will get married next year. 　　But you turned on your computer and the operating system (OS) told you the HDD is about 95MB. The 5MB of space is missing. It is known that the HDD manufacturers have a different capacity measurement. The manufacturers think 1 “kilo” is 1000 but the OS thinks that is 1024. There are several descriptions of the size of an HDD. They are byte, kilobyte, megabyte, gigabyte, terabyte, petabyte, exabyte, zetabyte and yottabyte. Each one equals a “kilo” of the previous one. For example 1 gigabyte is 1 “kilo” megabytes. 　　Now you know the size of a hard disk represented by manufacturers and you want to calculate the percentage of the “missing part”.

Input

The first line contains an integer T, which indicates the number of test cases. 　　For each test case, there is one line contains a string in format “number[unit]” where number is a positive integer within [1, 1000] and unit is the description of size which could be “B”, “KB”, “MB”, “GB”, “TB”, “PB”, “EB”, “ZB”, “YB” in short respectively.

Output

For each test case, output one line “Case #x: y”, where x is the case number (starting from 1) and y is the percentage of the “missing part”. The answer should be rounded to two digits after the decimal point.

Sample Input

2 100[MB] 1[B]

Sample Output

Case #1: 4.63%

Case #2: 0.00%

Hint

Source

2013 Asia Chengdu Regional Contest

``` 1 #include<stdio.h>
2 #include<string.h>
3 #include<stdlib.h>
4 int main()
5 {
6     char str[20];
7     int t,i,cnt=1;
8     double a;
9     scanf("%d",&t);
10     while(t--)
11     {
12         scanf("%s",str);
13         for(i=0;str[i]!='[';i++);
14         switch(str[++i])
15         {
16         case'B': a=0.00;  break;
17         case'K': a=2.34;  break;
18         case'M': a=4.63;  break;
19         case'G': a=6.87;  break;
20         case'T': a=9.05;  break;
21         case'P': a=11.18; break;
22         case'E': a=13.26; break;
23         case'Z': a=15.30; break;
24         case'Y': a=17.28; break;
25         }
26         printf("Case #%d: %.2lf%%\n",cnt++,a);
27     }
28     return 0;
29 }```

658 篇文章64 人订阅

0 条评论

相关文章

HDUOJ ------1398

http://acm.hdu.edu.cn/showproblem.php?pid=1398 Square Coins Time Limit: 2000/100...

28860

HDU 3578 Greedy Tino（双塔DP）

Greedy Tino Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768...

35950

HDUOJ------1711Number Sequence

Number Sequence Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 32768/3...

31660

HDU 5676 ztr loves lucky numbers

ztr loves lucky numbers Time Limit: 2000/1000 MS (Java/Others)    Me...

38150

POJ 2773 Happy 2006（容斥原理+二分）

Happy 2006 Time Limit: 3000MS Memory Limit: 65536K Total Submissions: 1...

31270

POJ-1458 Common Subsequence（线性动规，最长公共子序列问题）

Common Subsequence Time Limit: 1000MS Memory Limit: 10000K Total Submis...

33970

HDU 2289 Cup【高精度，二分】

Cup Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/...

26250

hdu----(1402)A * B Problem Plus（FFT模板）

A * B Problem Plus Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536...

39160

hdu 4315 Climbing the Hill（阶梯博弈转nim博弈）

Climbing the Hill Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/...

370110