HDOJ 4788 Hard Disk Drive 模拟

🍑 HDOJ 4788 Hard Disk Drive

在这里插入图片描述
输入

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();
		}
	}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值