#P1656. Counting Black

    ID: 657 传统题 1000ms 256MiB 尝试: 3 已通过: 1 难度: 6 上传者: 标签>贪心动态规划字符串难度普及+/提高POJ Monthly--2004.05.15 Liu Rujia@POJ

Counting Black

题目描述

有一块如下方所示的100×100100 \times 100网格板。左上角的网格记为(1,1)(1, 1),右下角的网格记为(100,100)(100, 100)

我们可以对这块板执行三种命令:

  1. WHITEWHITE xx, yy, LL
    // 在板上绘制一个白色正方形,
    // 该正方形由左上角网格(x,y)(x, y)和右下角网格(x+L1,y+L1)(x+L-1, y+L-1)确定

  2. BLACKBLACK xx, yy, LL
    // 在板上绘制一个黑色正方形,
    // 该正方形由左上角网格(x,y)(x, y)和右下角网格(x+L1,y+L1)(x+L-1, y+L-1)确定

  3. TESTTEST xx, yy, LL
    // 查询正方形(x,y)(x, y)-(x+L1,y+L1)(x+L-1, y+L-1)内的黑色网格数量

初始时,板上所有网格均为白色。我们对板执行一系列命令,你的任务是编写程序,在遇到TESTTEST命令时输出所需区域内的黑色网格数量。

输入格式

输入的第一行是一个整数tt1t1001 \leq t \leq 100),表示命令的数量。接下来的每一行是一条命令。保证所有命令均合法,即不会尝试绘制/查询板外的网格。

输出格式

对于每条TESTTEST命令,输出一行,包含所需区域内的黑色网格数量。

输入数据示例 1

5  
BLACK 1 1 2  
BLACK 2 2 2  
TEST 1 1 3  
WHITE 2 1 1  
TEST 1 1 3  

输出数据示例 1

7  
6  

来源

POJ Monthly--2004.05.15 Liu Rujia@POJ