Submission #499956

#TimeUsernameProblemLanguageResultExecution timeMemory
499956blueBitaro, who Leaps through Time (JOI19_timeleap)C++17
0 / 100
3078 ms4780 KiB
#include <iostream> #include <vector> #include <cassert> #include <cstdio> using namespace std; using ll = long long; int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); int N, Q; cin >> N >> Q; ll L[N], R[N]; for(int i = 1; i <= N-1; i++) cin >> L[i] >> R[i]; for(int j = 1; j <= Q; j++) { int T; cin >> T; if(T == 1) { ll P, S, E; cin >> P >> S >> E; L[P] = S; R[P] = E; } else { ll A, B, C, D; cin >> A >> B >> C >> D; ll ans = 0; if(A <= C) { ll x = B; int p = A; for(int p = A; p < C; p++) { if(L[p] <= x && x <= R[p]) { x++; ans += 0; } else if(x < L[p]) { x += (L[p] - x) + 1; ans += 0; } else if(x > R[p] - 1) { ans += x - (R[p] - 1); x = R[p]; } } ans += max(0LL, x-D); } else { ll x = B; int p = A; for(int p = A; p > C; p--) { if(L[p-1] <= x && x <= R[p-1]) { x++; ans += 0; } else if(x < L[p-1]) { x += (L[p-1] - x) + 1; ans += 0; } else if(x > R[p-1] - 1) { ans += x - (R[p-1] - 1); x = R[p-1]; } } } printf("%lld \n", ans); // cout << ans << '\n'; // if(j >= 1) assert(0); } } }

Compilation message (stderr)

timeleap.cpp: In function 'int main()':
timeleap.cpp:43:21: warning: unused variable 'p' [-Wunused-variable]
   43 |                 int p = A;
      |                     ^
timeleap.cpp:69:21: warning: unused variable 'p' [-Wunused-variable]
   69 |                 int p = A;
      |                     ^
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...