/*
Problem: 1119E
Date: 19-01-2024 12:08 PM
*/
#include <iostream>
using namespace std;
int n;
long long a[300000];
int main() {
cin >> n;
for(int i = 0; i < n; i++) {
cin >> a[i];
}
int i = 0; // index of small side
int j = 0; // index of 2 larger sides
long long count = 0;
while(i < n && j < n) {
if(a[i] == 0) {
i++;
}else if(i == j) {
count += a[i] / 3;
a[i] %= 3;
j++;
}else if(a[j] >= 2) {
long long tris = min(a[i], a[j] / 2);
count += tris;
a[i] -= tris;
a[j] -= 2 * tris;
}else {
j++;
}
}
cout << count << endl;
}
1714E - Add Modulo 10 | 1714A - Everyone Loves to Sleep |
764A - Taymyr is calling you | 1714B - Remove Prefix |
1264F - Beautiful Fibonacci Problem | 52A - 123-sequence |
1543A - Exciting Bets | 1714D - Color with Occurrences |
215B - Olympic Medal | 1445A - Array Rearrangment |
1351A - A+B (Trial Problem) | 935B - Fafa and the Gates |
1291A - Even But Not Even | 1269A - Equation |
441A - Valera and Antique Items | 1702C - Train and Queries |
816B - Karen and Coffee | 838D - Airplane Arrangements |
148B - Escape | 847G - University Classes |
1110A - Parity | 1215B - The Number of Products |
604C - Alternative Thinking | 1204C - Anna Svyatoslav and Maps |
322A - Ciel and Dancing | 1689B - Mystic Permutation |
1711B - Party | 1702D - Not a Cheap String |
1714F - Build a Tree and That Is It | 1703F - Yet Another Problem About Pairs Satisfying an Inequality |