제출 #902078

#제출 시각아이디문제언어결과실행 시간메모리
902078Darren0724Bitaro, who Leaps through Time (JOI19_timeleap)C++17
4 / 100
3046 ms10668 KiB
#pragma GCC optimize("Ofast","O3","unroll-loops") #pragma GCC target("avx2") #include <bits/stdc++.h> using namespace std; #define int long long #define LCBorz ios_base::sync_with_stdio(false); cin.tie(0); #define all(x) x.begin(), x.end() #define endl '\n' const int mod=1e9+9; int32_t main() { LCBorz; int n;cin>>n; int q;cin>>q; vector<int> a(n+2),b(n+2); for(int i=1;i<n;i++){ cin>>a[i]>>b[i]; } for(int i=0;i<q;i++){ int id;cin>>id; if(id==1){ int p,a1,b1;cin>>p>>a1>>b1; a[p]=a1,b[p]=b1; } if(id==2){ int c,t1,d,t2;cin>>c>>t1>>d>>t2; int cnt=0; if(c<d){ for(int i=c;i<d;i++){ if(t1<a[i]){ t1=a[i]; } if(t1>b[i]-1){ cnt+=t1-b[i]+1; t1=b[i]-1; } t1++; } } else{ for(int i=c-1;i>=d;i--){ if(t1<a[i]){ t1=a[i]; } if(t1>b[i]-1){ cnt+=t1-b[i]+1; t1=b[i]-1; } t1++; } } if(t1>t2){ cnt+=t1-t2; } cout<<cnt<<endl; } } return 0; } // 0 0 0 0 5 5 5 5 5 5 5 5 7 7 7 7 10 /* 17 5 4 100 107 114 121 */
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...