输入
2
100[MB]
1[B]
输出
Case #1: 4.63%
Case #2: 0.00%
🍑 AC
import java.util.Scanner;
import java.util.regex.Pattern;
public class Main
{
public static void main(String[] args)
{
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
for (int i = 1; i <= n; i++)
{
String s = sc.next();
// String[] ss = s.split("\\[");// 转义
String[] ss = s.split(Pattern.quote("["));// 处理特殊字符
int x = Integer.parseInt(ss[0]);
int t = -1;
switch (ss[1])
{
case "B]":
t = 0;
break;
case "KB]":
t = 1;
break;
case "MB]":
t = 2;
break;
case "GB]":
t = 3;
break;
case "TB]":
t = 4;
break;
case "PB]":
t = 5;
break;
case "EB]":
t = 6;
break;
case "ZB]":
t = 7;
break;
case "YB]":
t = 8;
break;
default:
break;
}
double ans = Math.pow(1000.0, t) / Math.pow(1024.0, t);
ans = 1 - ans;
System.out.print("Case #" + i + ": ");
System.out.printf("%.2f%%", ans * 100); // %% 把 % 当初字符串而不是转义符
System.out.println();
}
}
}