제출 #683786

#제출 시각아이디문제언어결과실행 시간메모리
683786luka1234Segments (IZhO18_segments)C++14
7 / 100
5051 ms2236 KiB
#include<bits/stdc++.h> #define ll long long #define ff first #define ss second #define db double using namespace std; int n,t; pair<int,int> a[200002]; int id=1; int ans=0; int intersection(int x1,int y1,int x2,int y2){ int f1=min(y1,y2); int f2=max(x1,x2); int f=f1-f2+1; if(f<=0) f=0; return f; } int main(){ ios_base::sync_with_stdio(0); cin.tie(0); cin>>n>>t; while(n--){ int ind; cin>>ind; if(ind==1){ int x,y; cin>>x>>y; x=x^(t*ans); y=y^(t*ans); if(x>y) swap(x,y); a[id].ff=x; a[id].ss=y; id++; } if(ind==2){ int pos; cin>>pos; a[pos].ff=-1; a[pos].ss=-1; } if(ind==3){ int x,y,f; cin>>x>>y>>f; x=x^(t*ans); y=y^(t*ans); ans=0; if(x>y) swap(x,y); for(int k=1;k<=id;k++){ int z=intersection(a[k].ff,a[k].ss,x,y); if(z>=f) ans++; } cout<<ans<<"\n"; } } return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...