Responsive image

问题 1670 --[USACO 5.3.2]窗体面积

1670: [USACO 5.3.2]窗体面积

时间限制: 1 Sec  内存限制: 64 MB
提交: 0  解决: 0
[提交][状态][讨论版][命题人:]

题目描述

你刚刚接手一项窗体界面工程。窗体界面还算简单,而且幸运的是,你不必显示实际的窗体。有 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)是窗体的对角。当你创建一个窗体的时候,它自动被“置顶”。你不能用已经存在的标识符来创建窗体,但是你可以删除一个窗体后再用已删除窗体的标识符来创建窗体。坐标用正整数来表示,并且所有的窗体面积都不为 0(x <> X 且 y <> Y)。x 坐标和 y 坐标在 1 —— 32767 的范围内。

输入描述

输入文件包含给你的解释程序的一系列命令,每行一个。当输入文件结束时,停止程序。

输出描述

只对于 s() 命令进行输出。当然,输入文件可能有许多 s() 命令,所以输出文件应该是一个百分比的序列,每行一个,百分比是窗体可见部分的百分比。百分比应该四舍五入到三位小数。

样例输入

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

样例输出

49.167

来源

[提交][状态]
ACM算法攻关部