You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.
# include <bits/stdc++.h>
/*
通过了 5/10个数据
结果: Memory Limit Exceeded
*/
using namespace std ;
const int N = 1e4 + 10 ; //矩形的数量
int n , sum ;
bool p [ N ] [ N ] ;
//这里需要估算一下空间, 因为int是8个bit,bool是1个bit。
// 1e4*1e4=1e8 100000000 bit/8= 12500000 byte = 12207.03125 kb = 11.920928955078125MB
//模拟,对于(x1,y1)->(x2,y2)内的所有单元格,都标识为已被刷过油漆
//注意一下这里坐标与单元格的映射关系,就把每个单元格的左下角坐标认为是单元格的编号
void paint ( int x1 , int y1 , int x2 , int y2 ) {
for ( int i = x1 ; i < x2 ; i + + )
for ( int j = y1 ; j < y2 ; j + + )
p [ i ] [ j ] = 1 ;
}
int main ( ) {
//加快读入
ios : : sync_with_stdio ( false ) , cin . tie ( 0 ) ;
cin > > n ;
for ( int i = 0 ; i < n ; i + + ) {
int x1 , y1 , x2 , y2 ;
cin > > x1 > > y1 > > x2 > > y2 ;
paint ( x1 , y1 , x2 , y2 ) ;
}
for ( int i = 0 ; i < N ; i + + )
for ( int j = 0 ; j < N ; j + + )
if ( p [ i ] [ j ] ) sum + + ;
cout < < sum < < endl ;
return 0 ;
}