#4074. 「USACO5.3」窗口面积 暂未评定

时间限制:1000 ms 内存限制:128 MiB 输入文件:window.in 输出文件:window.out
题目类型:传统 评测方式:文本比较
上传者: root

注意

本题采用文件输入输出。

输入文件为 window.in, 输出文件为window.out

题目描述

你刚刚接手了一项关于实现窗口界面操作的任务。

你需要让你的窗口界面能够实现下面五种操作:

  1. 创建一个窗口
  2. 置顶一个窗口
  3. 置底一个窗口
  4. 关闭一个窗口
  5. 输出一个窗口的可见部分所占百分比(即不被其他窗口覆盖的部分占总体的百分比)

在输入中,各个操作以下面的格式来表示:

  • 创建一个窗口:w(I,x,y,X,Y)
  • 置顶一个窗口:t(I)
  • 置底一个窗口:b(I)
  • 关闭一个窗口:d(I)
  • 输出一个窗口的可见部分所占百分比:s(I) 其中,I 是每个窗口的唯一标识符,是一个字符。

字符可以是 “a” .. “z”,“A” .. “Z” 和 “0” .. “9” 中的任何一个。

输入中不会出现多余的空格。

(x,y) 和 (X,Y) 是窗口的两个对角的坐标。

当一个窗口被创建成功后,它会被自动置顶。

如果一个标识符被目前存在的某个窗口使用着,那么你就不能用该标识符创建新的窗口。

但是,如果你将该窗口关闭,那么你就可以使用该标识符创建新的窗口了。

输入格式

从文件 window.in 中读入数据。

输入包含若干行,每行包含一个如题所述的命令。

输出格式

输出到文件 window.out 中。

对于每个 s(I) 命令,输出一个保留三位小数的浮点数,用来表示当前所问窗口的可见部分所占百分比。

每个数占一行。

样例

样例输入

w(a,10,132,20,12)
w(b,8,76,124,15)
s(a)

样例输出

49.167

数据范围与提示

都是整数且 ,

,

命令不会超过 个。