Submission #1166139

#TimeUsernameProblemLanguageResultExecution timeMemory
1166139dnnndaEscape Route 2 (JOI24_escape2)C++20
23 / 100
62 ms6504 KiB
#include<bits/stdc++.h> using namespace std; #define S second #define F first #define ll long long //#define int long long //#pragma GCC optimize("Ofast, unroll-loop") //#pragma GCC target("avx,avx2") #pragma GCC optimize("O3") #define init(arr,val) memset(arr,val,sizeof arr) const int inf=0x3f3f3f3f; const ll inff=0x3f3f3f3f3f3f3f3f; const int X=1000000007; //const int X=998244353; int a[100005], b[100005]; ll dp[100005]; int main(){ ios::sync_with_stdio(false), cin.tie(nullptr); int n, t; cin >> n >> t; for(int i=1 ; i<=n-1 ; i++){ int m; cin >> m; cin >> a[i] >> b[i]; } for(int i=1 ; i<n ; i++){ if(b[i-1]<=a[i]) dp[i+1]=dp[i]+(a[i]-b[i-1])+(b[i]-a[i]); else dp[i+1]=dp[i]+(a[i]-b[i-1]+t)+(b[i]-a[i]); //cout << "dp[" << i+1 << "]=" << dp[i+1] << '\n'; } int q; cin >> q; while(q--){ int l, r; cin >> l >> r; cout << dp[r]-dp[l]-(t+a[l]-b[l-1])%t << '\n'; } return 0; }
#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...