#include using namespace std; int * field; int l; int bridge(int s, int e){ if(s >= e || s < 0 || e > l-1) return 0; int i = s+1; while (i<=e) { if(field[i]==field[s]) return i-s-1 + bridge(s+1,i-1) + bridge(i,e); if(field[i]>field[s]) return bridge(s+1,i-1) + bridge(i,e); i++; } return bridge(s+1,e); } int main(int argc, char const *argv[]) { int tmp; cin >> l; field = new int[l]; for (int i = 0; i < l; i++) { scanf("%d",&tmp); field[i] = tmp; } cout << bridge(0,l-1) << endl; delete [] field; return 0; }