제출 #499958

#제출 시각아이디문제언어결과실행 시간메모리
499958blueBitaro, who Leaps through Time (JOI19_timeleap)C++17
0 / 100
3067 ms4708 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) { // cerr << "case R\n"; 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 { // cerr << "case L\n"; ll x = B; int p = A; for(int p = A; p > C; p--) { // cerr << "currently at position " << p << " at time " << x << '\n'; 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]; } } ans += max(0LL, x-D); } cout << ans << '\n'; // cout << ans << '\n'; // if(j >= 1) assert(0); } } }

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

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