本文共 1887 字,大约阅读时间需要 6 分钟。
Time Limit: 1000MS | Memory Limit: 10000K | |
Total Submissions: 10360 | Accepted: 6691 |
Description
1. WHITE x, y, L // Paint a white square on the board, // the square is defined by left-top grid (x, y) // and right-bottom grid (x+L-1, y+L-1)2. BLACK x, y, L // Paint a black square on the board, // the square is defined by left-top grid (x, y) // and right-bottom grid (x+L-1, y+L-1)3. TEST x, y, L // Ask for the number of black grids // in the square (x, y)- (x+L-1, y+L-1)In the beginning, all the grids on the board are white. We apply a series of commands to the board. Your task is to write a program to give the numbers of black grids within a required region when a TEST command is applied.
Input
Output
Sample Input
5BLACK 1 1 2BLACK 2 2 2TEST 1 1 3WHITE 2 1 1TEST 1 1 3
Sample Output
76
题意:
对于一个100*100棋盘,进行下列三种操作
BLACK x y l 将(x,y)为左上角,边长为l的正方形涂黑
WHITE x y l 将(x,y)为左上角,边长为l的正方形涂白
TEST x y l 问(x,y)为左上角,边长为l的正方形有多少个黑色格子
参考代码:
#include每天水一发~#include using namespace std;#define MAX 100int main(){ int map[MAX][MAX]; int t,x,y,l; char s[20]; while (cin>>t){ memset(map,0,sizeof(map)); while (t--){ cin>>s>>x>>y>>l; if (strcmp(s,"BLACK")==0){ for (int i=x;i
转载地址:http://ffbqb.baihongyu.com/