#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define endl '\n'
#define pb push_back
#define bismillah ios_base::sync_with_stdio(false);cin.tie(0); cout.tie(0);
bool bom[200005];
ll sumbom[200005];
int main(){
bismillah
ll n;
cin >> n;
vector<ll> a(n+1);
for (ll i = 1 ; i <= n ; i++){
cin >> a[i];
}
ll ans = 0;
ll l = 1, r = n;
while (l < r){
if (a[l] != a[r]){
if (a[l] + a[l+1] == a[r]){
a[l+1] += a[l];
l++;
ans++;
}
else if (a[r] + a[r-1] == a[l]){
a[r-1]+=a[r];
r--;
ans++;
}
else{
if (r-1 == l){
ans++;
break;
}
if (a[l] < a[r]){
a[l+1]+=a[l];
l++;
ans++;
}
else if (a[r] < a[l]){
a[r-1]+=a[r];
r--;
ans++;
}
}
}
if (l >= r){
break;
}
if (a[l] == a[r]){
l++;
r--;
}
}
cout << ans;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |