Submission #968882

#TimeUsernameProblemLanguageResultExecution timeMemory
96888212345678Sum Zero (RMI20_sumzero)C++17
22 / 100
1072 ms5204 KiB
#include <bits/stdc++.h> using namespace std; const int nx=4e5+5; #define ll long long ll n, q, a[nx], l, r, dp[nx]; int main() { cin.tie(NULL)->sync_with_stdio(false); cin>>n; for (int i=1; i<=n;i ++) cin>>a[i]; for (int i=1; i<=n; i++) { ll sm=0; for (int j=i; j>=0; j--) { sm+=a[j]; if (sm==0) { dp[i]=j; break; } } } for (int i=1; i<=n; i++) dp[i]=max(dp[i], dp[i-1]); //cout<<"dp "<<i<<' '<<dp[i]<<'\n'; cin>>q; while (q--) { cin>>l>>r; ll res=0; while (r>=l) { if (dp[r]<l) break; r=dp[r]-1; res++; } cout<<res<<'\n'; } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...