125742024-12-23 18:12:194rt3xp02015. decembercpp17Elfogadva 16ms792 KiB
#include<bits/stdc++.h>
using namespace std;
vector<bool> visible(10001,0);

struct box{
  int x1,y1,x2,y2,id;
};

void f(const vector<box> &v, bool x=false){
  int N=100489,SQRT=317;
  vector<bool> a(N,0),b(SQRT,0); vector<int> sumb(SQRT,0);
  for(const box &box: v){
    int l,r,sum=0;
    if(x){
      l=box.x1; r=box.x2;
    }
    else{
      l=box.y1; r=box.y2;
    }
    r--;
    for(int i=l;i<=r;){
      if(i%SQRT==0 && i+SQRT-1<=r){
        if(!b[i/SQRT]){
          b[i/SQRT]=1;
          visible[box.id]=1;
        }
        i+=SQRT;
      }
      else{
        if(!a[i]){
          a[i]=1; sumb[i/SQRT]++; if(sumb[i/SQRT]==SQRT) b[i/SQRT]=1;
          visible[box.id]=1;
        }
        i++;
      }
    }
  }
}

int main(){
  int n,m,k,id=0,cnt=0; cin >> n >> m >> k;
  vector<box> v(k);
  for(box &i: v){
    cin >> i.x1 >> i.y1 >> i.x2 >> i.y2;
    i.id=++id;
  }
  sort(v.begin(),v.end(),[](const box &l, const box &r){return l.x1<r.x1;}); f(v);
  sort(v.begin(),v.end(),[](const box &l, const box &r){return l.x2>r.x2;}); f(v);
  sort(v.begin(),v.end(),[](const box &l, const box &r){return l.y1<r.y1;}); f(v,true);
  sort(v.begin(),v.end(),[](const box &l, const box &r){return l.y2>r.y2;}); f(v,true);
  // for(int i=1;i<=k;i++) if(!visible[i]) cout << i << '\n';
  for(int i=1;i<=k;i++) if(!visible[i]) cnt++;
  cout << cnt;
}
1 - Elfogadva
Memória: 320KiB
Idő: 1ms

Program kimenete:
3
Elvárt kimenet:
3
Ellenőrző kimenete:
ok 1 number(s): "3"

2 - Elfogadva
Memória: 568KiB
Idő: 9ms

Program kimenete:
11
Elvárt kimenet:
11
Ellenőrző kimenete:
ok 1 number(s): "11"

3 - Elfogadva
Memória: 320KiB
Idő: 4ms

Program kimenete:
3
Elvárt kimenet:
3
Ellenőrző kimenete:
ok 1 number(s): "3"

4 - Elfogadva
Memória: 320KiB
Idő: 2ms

Program kimenete:
0
Elvárt kimenet:
0
Ellenőrző kimenete:
ok 1 number(s): "0"

5 - Elfogadva
Memória: 748KiB
Idő: 14ms

Program kimenete:
62
Elvárt kimenet:
62
Ellenőrző kimenete:
ok 1 number(s): "62"

6 - Elfogadva
Memória: 568KiB
Idő: 9ms

Program kimenete:
174
Elvárt kimenet:
174
Ellenőrző kimenete:
ok 1 number(s): "174"

7 - Elfogadva
Memória: 320KiB
Idő: 4ms

Program kimenete:
0
Elvárt kimenet:
0
Ellenőrző kimenete:
ok 1 number(s): "0"

8 - Elfogadva
Memória: 348KiB
Idő: 3ms

Program kimenete:
0
Elvárt kimenet:
0
Ellenőrző kimenete:
ok 1 number(s): "0"

9 - Elfogadva
Memória: 724KiB
Idő: 13ms

Program kimenete:
4
Elvárt kimenet:
4
Ellenőrző kimenete:
ok 1 number(s): "4"

10 - Elfogadva
Memória: 568KiB
Idő: 8ms

Program kimenete:
569
Elvárt kimenet:
569
Ellenőrző kimenete:
ok 1 number(s): "569"

11 - Elfogadva
Memória: 568KiB
Idő: 7ms

Program kimenete:
0
Elvárt kimenet:
0
Ellenőrző kimenete:
ok 1 number(s): "0"

12 - Elfogadva
Memória: 668KiB
Idő: 10ms

Program kimenete:
0
Elvárt kimenet:
0
Ellenőrző kimenete:
ok 1 number(s): "0"

13 - Elfogadva
Memória: 568KiB
Idő: 8ms

Program kimenete:
0
Elvárt kimenet:
0
Ellenőrző kimenete:
ok 1 number(s): "0"

14 - Elfogadva
Memória: 568KiB
Idő: 7ms

Program kimenete:
0
Elvárt kimenet:
0
Ellenőrző kimenete:
ok 1 number(s): "0"

15 - Elfogadva
Memória: 568KiB
Idő: 8ms

Program kimenete:
0
Elvárt kimenet:
0
Ellenőrző kimenete:
ok 1 number(s): "0"

16 - Elfogadva
Memória: 568KiB
Idő: 12ms

Program kimenete:
14
Elvárt kimenet:
14
Ellenőrző kimenete:
ok 1 number(s): "14"

17 - Elfogadva
Memória: 580KiB
Idő: 7ms

Program kimenete:
1
Elvárt kimenet:
1
Ellenőrző kimenete:
ok 1 number(s): "1"

18 - Elfogadva
Memória: 568KiB
Idő: 10ms

Program kimenete:
6
Elvárt kimenet:
6
Ellenőrző kimenete:
ok 1 number(s): "6"

19 - Elfogadva
Memória: 572KiB
Idő: 12ms

Program kimenete:
8
Elvárt kimenet:
8
Ellenőrző kimenete:
ok 1 number(s): "8"

20 - Elfogadva
Memória: 688KiB
Idő: 4ms

Program kimenete:
0
Elvárt kimenet:
0
Ellenőrző kimenete:
ok 1 number(s): "0"

21 - Elfogadva
Memória: 420KiB
Idő: 6ms

Program kimenete:
0
Elvárt kimenet:
0
Ellenőrző kimenete:
ok 1 number(s): "0"

22 - Elfogadva
Memória: 792KiB
Idő: 16ms

Program kimenete:
2
Elvárt kimenet:
2
Ellenőrző kimenete:
ok 1 number(s): "2"

23 - Elfogadva
Memória: 320KiB
Idő: 3ms

Program kimenete:
0
Elvárt kimenet:
0
Ellenőrző kimenete:
ok 1 number(s): "0"