Submission #1254973

#TimeUsernameProblemLanguageResultExecution timeMemory
1254973magic_tripPotatoes and fertilizers (LMIO19_bulves)C++20
34 / 100
47 ms8264 KiB
#include <bits/stdc++.h> using namespace std; #pragma GCC optimize("O3") #pragma GCC optimize("Ofast") #pragma optimize("unroll-loops") #define fast ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0) #define all(x) x.begin(), x.end() #define rll(x) x.rbegin(), x.rend() #define COMP(x) x.erase(unique(all(x)), x.end()) #define MOD 1000000007 #define MOD2 998244353 #define sz(x) (ll)x.size() typedef __int128_t lll; typedef long long ll; typedef unsigned long long ull; typedef long double ld; typedef pair<ll,ll> pll; typedef pair<ll, pll> PP; const ll Lnf = 2e18; ll n; ll A[505050], B[505050]; int main(){ fast; cin>>n; ll ans = 0; for(int i = 1 ; i <= n ; i++){ cin>>A[i]>>B[i]; A[i] += A[i-1]; B[i] += B[i-1]; ans += abs(A[i]-B[i]); } if(A[n]==B[n])return !(cout<<ans); // cout<<ans<<endl; ll t = ans; for(int i = n ; i >= 1 ; i--){ t -= abs(A[i]-B[i]); A[i]--; t += abs(A[i]-B[i]); ans = min(ans,t); } cout<<ans; }
#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...