#include <cstdio>
#include <vector>
#include <algorithm>
using namespace std;

int main() {          //本题为基本的股票买卖问题,采用动态规划方法可以解决
    int n;
    scanf("%d", &n);
    int j;
    vector<int> ivec(n);
    for(int i = 0; i < n; ++i)
    {
        scanf("%d", &j);
        ivec[i] = j;
    }
    vector<vector<int>> price(n, vector<int>(2));     //二维数字dp,price[i][0]代表第i天不持有股票,利润最大值,prince[i][1]代表当天持有股票利润最大值
    price[0][0] = 0;
    price[0][1] = -ivec[0];
    for(int i = 1; i < n; ++i)
    {
        price[i][0] = max(price[i - 1][0], price[i - 1][1] + ivec[i]);
        price[i][1] = max(price[i - 1][1], -ivec[i]);   //因为只能买卖一次股票。因此第i天买入可记为-ivec[i]
    }
    printf("%d", price[n - 1][0]);
    return 0;
}
// 64 位输出请用 printf("%lld")