-
题目描述:
-
sun是万千考研学子中的一员,他每天过着三点一线的生活。
学校里有一个公告栏,他每天都看到上面张贴着各种考研海报。
sun提出了一个问题:公告栏上还剩多少空白区域是没被考研海报张贴过的?
于是sun果断上王道贴上了这道题目。
-
输入:
-
公告栏左上角是坐标原点(0,0),公告栏长宽相等。
数据有多组,每组输入公告栏长度n(0<n<=100)。
海报张数m(0<m<=100),以及每张海报的左上角坐标(x1,y1)和右下角坐标(x2,y2)。
注意:其中坐标有可能小于0,大于n,但在int范围内。
-
输出:
-
对每一组输入输出公告栏还剩多少空白区域,输出带回车。
-
样例输入:
-
3 2 0 0 1 2 0 0 2 1 10 2 0 0 1 1 0 0 3 3
-
样例输出:
-
6
91
-
-
///
-
注意一下坐标可能不在(0,0)到(n,n)这个范围就行了
-
-
#include<iostream> #include<string.h> using namespace std; bool v[101][101]; int main() { int n, m, j, k, i; int v1, v2, v3, v4; while (cin >> n >> m) { memset(v,false,sizeof(v)); for (j = 0; j<m; j++) { cin >> v1 >> v2 >> v3 >> v4; if (v1 < 0) v1 = 0; if (v2 < 0) v2 = 0; if (v3 > n) v3 = n; if (v4 > n) v4 = n; for (k = v1; k<v3; k++) for (i = v2; i<v4; i++) v[k][i] = true; } k = 0; for (j = 0; j<n; j++) for (i = 0; i<n; i++) if (v[j][i] == false) k++; cout << k << endl; } return 0; } /************************************************************** Problem: 1333 User: 午夜小白龙 Language: C++ Result: Accepted Time:60 ms Memory:1528 kb ****************************************************************/