제출 #92098

#제출 시각아이디문제언어결과실행 시간메모리
92098emil_physmathSegments (IZhO18_segments)C++17
0 / 100
11 ms760 KiB
#include <iostream> #include <stdio.h> #include <queue> #include <vector> using namespace std; void SubTaskOne(int n, int t); void SubTaskTwo(); void SubTaskThree(); int main() { int n, t; cin>>n>>t; if (n<=5000) SubTaskOne(n, t); char I; cin >> I; return 0; } void SubTaskOne(int n, int t) { int lastans=0; priority_queue<int> unused; vector<pair<int, int> > seg; while (n--) { int type, l, r, k, id; cin>>type; if (type==1) { cin>>l>>r; l=(l^(t*lastans)); r=(r^(t*lastans)); if (l>r) swap(l, r); if (unused.empty()) seg.push_back(make_pair(l, r)); else { seg[-unused.top()]=make_pair(l, r); unused.pop(); } } else if (type==2) { cin>>id; id--; seg[id]=make_pair(-1, -1); unused.push(-id); } else if (type==3) { int ans=0; cin>>l>>r>>k; l=(l^(t*lastans)); r=(r^(t*lastans)); if (l>r) swap(l, r); for (int i=0; i<seg.size(); i++) if (seg[i].first!=-1 && min(seg[i].second, r)-max(seg[i].first, l)+1>=k) ans++; cout<<ans<<'\n'; lastans=ans; } } } void SubTaskTwo() { } void SubTaskThree() { }

컴파일 시 표준 에러 (stderr) 메시지

segments.cpp: In function 'void SubTaskOne(int, int)':
segments.cpp:58:19: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
    for (int i=0; i<seg.size(); i++)
                  ~^~~~~~~~~~~
#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...