题目名称 842. 绘画
输入输出 drawing.in/out
难度等级 ★★★
时间限制 1000 ms (1 s)
内存限制 128 MiB
测试数据 10
题目来源 Gravatarcqw 于2012-07-05加入
开放分组 全部用户
提交状态
分类标签
分享题解
通过:7, 提交:26, 通过率:26.92%
GravatarIMSL77 100 1.898 s 12.64 MiB Pascal
GravatarIMSL77 100 1.914 s 12.64 MiB Pascal
Gravatarwo shi 刘畅 100 1.977 s 25.74 MiB Pascal
GravatarCzb。 100 2.957 s 6.82 MiB C++
Gravatarfuhao 100 4.004 s 10.51 MiB Pascal
Gravatarfuhao 100 4.070 s 10.51 MiB Pascal
Gravatarczp 100 5.063 s 11.20 MiB Pascal
Gravatarfuhao 90 4.698 s 10.51 MiB Pascal
Gravatarfuhao 50 5.299 s 10.51 MiB Pascal
Gravatarfuhao 50 5.309 s 10.49 MiB Pascal
本题关联比赛
20120705
关于 绘画 的近10条评论(全部评论)

842. 绘画

★★★   输入文件:drawing.in   输出文件:drawing.out   简单对比
时间限制:1 s   内存限制:128 MiB

【问题描述】

   Fj设计了一个绘画程序,这个绘画程序就是在N(行)*N(列)的方格里,给某些区域各自染上不同的颜色。颜色一共有K种,标号分别是1..K.默认颜色为白色(标号为1)。

   N*N的方格里的最左上的那个格子的编号为(0,0)。某个格子的编号为(x,y),这里x是所在格子的行标,y是所在列的列标。

   Fj的绘画程序有三种不同的命令

1)  PAINT命令:PAINTc x1y1x2y2 给(x1,y1)到(x2,y2)这个矩形染上C的颜色,不过这种染色不是在整个区域全部染上颜色C,而是在x1,y1染上染上颜色c,其余交错染色,如下图所示,这是一个染上红色的矩形。(注意:白色是底色,并不是染上白色,也就是说白色区域并没有染色。)

2)  SAVE命令:SAVE      将当前棋盘的颜色存储起来。

3)  LOAD命令:LOAD x     将棋盘的颜色变为第x次存储的状态。

最初棋盘是纯白色(颜色代码是1),给出M条命令,每条命令肯定是以上三种命令中的一种,问M条命令后,棋盘的状态。

【输入】

第一行三个整数N(1≤N≤1000),K(2≤K≤100000),和M(1 ≤M≤100000)意义如题目所示。

 接下来M行,为M条命令。

【输出】

N行*N列的矩阵,每行中整数用单个空格隔开,表示棋盘的颜色状态。


【输入输出样例1】

drawing.in

drawing.out


4 3 2 PAINT 2 0 0 3 3 PAINT 3 0 3 3 3



2 1 2 3 1 2 1 2 2 1 2 3 1 2 1 2



【输入输出样例2】

drawing.in

drawing.out


3 3 4 PAINT 3 0 0 1 1 SAVE PAINT 2 1 1 2 2 LOAD 1



3 1 1 1 3 1 1 1 1



【输入输出样例3】

drawing.in

drawing.out


3 4 7 PAINT 2 0 0 1 1 SAVE PAINT 3 1 1 2 2 SAVE PAINT 4 0 2 0 2 LOAD 2 PAINT 4 2 0 2 0



2 1 1 1 3 1 4 1 3




【数据范围】

  30%数据保证N<=100 M<=4000