제출 #557547

#제출 시각아이디문제언어결과실행 시간메모리
557547600Mihnea푸드 코트 (JOI21_foodcourt)C++17
7 / 100
1094 ms14384 KiB
#include <bits/stdc++.h> bool home = 1; using namespace std; ///#define int long long typedef long long ll; int n,m,q; signed main() { #ifdef ONLINE_JUDGE home = 0; #endif home=0; if (home) { freopen("I_am_iron_man", "r", stdin); } else { ios::sync_with_stdio(0); cin.tie(0); } cin>>n>>m>>q; vector<vector<ll>> questions; vector<int> sol; for (int i=1;i<=q;i++) { int type; cin>>type; assert(1<=type&&type<=3); questions.push_back(vector<ll> (5-type)); if(type==3)sol.push_back(-1); for (auto &qu:questions.back()) cin>>qu; } for(int i=1;i<=n;i++) { vector<pair<ll, int>> ev; ll have=0; ll jump=0; int id=-1; for (auto &question:questions) { int type=5-(int)question.size(); assert(1<=type&&type<=3); id+=(type==3); if(type==1) { int l=question[0],r=question[1],group=question[2],k=question[3]; if(l<=i&&i<=r) { have+=k; ev.push_back({have, group}); } } if (type==2) { int l=question[0],r=question[1],k=question[2]; if (l<=i&&i<=r) { jump=min(have,jump+k); } } if(type==3) { int a=question[0]; ll b=question[1]; if (a==i) { b+=jump; if (b>have) { sol[id]=0; }else{ int low=0,high=(int) ev.size()-1,pz=-1; while (low<=high) { int mid=(low+high)/2; if(ev[mid].first>=b) { pz=mid; high=mid-1; }else{ low=mid+1; } } assert(pz!=-1); sol[id]=ev[pz].second; } } } } } for (auto &x:sol) { cout<<x<<"\n"; } }

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

foodcourt.cpp: In function 'int main()':
foodcourt.cpp:18:12: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   18 |     freopen("I_am_iron_man", "r", stdin);
      |     ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...