解法:暴力、排序
#include <iostream>
#include <vector>
#include <algorithm>
#include <cmath>
using namespace std;
#define endl '\n'
struct tree {
int index;
int peach;
};
bool cmp(tree a,tree b) {
if (a.peach != b.peach)
return a.peach > b.peach;
}
int main() {
ios::sync_with_stdio(false);
cin.tie(0); cout.tie(0);
int t, n;
cin >> t;
while (t--) {
cin >> n;
int step = 0;
vector<struct tree> vec(n+1);
for (int i = 0; i <= n; i++) {
cin >> vec[i].peach;
vec[i].index = i;
}
sort(vec.begin(), vec.end(), cmp);
for (int i = 1; i <= n; i++) {
if (vec[i].peach != 0) {
step += fabs(vec[i].index - vec[i - 1].index);
}
else break;
}
cout << step << endl;
}
return 0;
}