
USACO 2022 January Contest, Gold
Problem 1. Drought
Contest has ended.

Log in to allow submissions in analysis mode
FJ’s $N$ ($1 \leq N \leq 100$) cows are arranged in a line such that the $i$th cow in line has a non-negative integer hunger level of $h_i$. As FJ’s cows are social animals and insist on eating together, the only way FJ can decrease the hunger levels of his cows is to select two adjacent cows $i$ and $i+1$ and feed each of them a bag of corn, causing each of their hunger levels to decrease by one.
FJ wants to feed his cows until all of them have the same non-negative hunger level. Although he doesn't know his cows' exact hunger levels, he does know an upper bound on the hunger level of each cow; specifically, the hunger level $h_i$ of the $i$-th cow is at most $H_i$ ($0\le H_i\le 1000$).
Your job is to count the number of $N$-tuples of hunger levels $[h_1,h_2,\ldots,h_N]$ that are consistent with these upper bounds such that it is possible for FJ to achieve his goal, modulo $10^9+7$.
INPUT FORMAT (input arrives from the terminal / stdin):
The first line contains $N$.The second line contains $H_1,H_2,\ldots,H_N$.
OUTPUT FORMAT (print output to the terminal / stdout):
The number of $N$-tuples of hunger levels modulo $10^9+7$.SAMPLE INPUT:
3 9 11 7
SAMPLE OUTPUT:
241
There are $(9+1)\cdot (11+1)\cdot (7+1)$ $3$-tuples $h$ that are consistent with $H$.
One of these tuples is $h=[8,10,5]$. In this case, it is possible to make all cows have equal hunger values: give two bags of corn to both cows $2$ and $3$, then give five bags of corn to both cows $1$ and $2$, resulting in each cow having a hunger level of $3$.
Another one of these tuples is $h=[0,1,0]$. In this case, it is impossible to make the hunger levels of the cows equal.
SAMPLE INPUT:
4 6 8 5 9
SAMPLE OUTPUT:
137
SCORING:
$N$ is even in even-numbered tests and odd in odd-numbered tests.
- Tests 3 and 4 satisfy $N\le 6$ and $H_i \le 10$.
- Tests 5 through 10 satisfy $N\le 50$ and $H_i \le 100$.
- Tests 11 through 20 satisfy no further constraints.
Problem credits: Arpan Banerjee and Benjamin Qi