#include <bits/stdc++.h>
using namespace std;
int n, k, sum, x = 1, y = 0, v[2005];
int dfs(int x, int y)
{
if(x == y || x + 1 == y && x == y) return 2;
else if(v[x] > v[y]) return 0;
else if(v[x] < v[y]) return 1;
else dfs(x + 1, y - 1);
}
int main()
{
cin >> n;
for( int i = 1; i <= n; i++ )
{
cin >> v[i];
y++;
}
for( int i = 1; i <= n; i++ )
{
if(dfs(x, y) == 2)
{
sum += i * v[x];
x++;
}
else if(dfs(x, y) == 0)
{
sum += v[y] * i;
y--;
}
else
{
sum += v[x] * i;
x++;
}
}
cout << sum;
return 0;
}
查了一个星期都没查出来,到底错在哪了???
求助大佬!!!