n位同学排成一列,数组height[i]表示这队人从前到后的身高,返回队中每个人与前方身高高于自己的人的最短距离,没有为0,
例如[175,173,174,163,182,172],返回[0,1,2,1,0,1]
function sum(arr){
var s=[]
if(arr.length==1)return 0;
s[0]=0
for(var i=1;i<arr.length;i++){
for(var j=i;j>=0;j--){
if(arr[i]<arr[j]){
s.push(i-j)
break;
}else if(j==0){
s.push(0)
break;
}
}
}
return s;
}
一个大小为N的数组A,数组中A[i]在A[0]到A[i-1]中有且只有一个元素值大于A[i](重复算多个),找出这些元素输出下标,例如
输入1,22,22,33,22,12,45,44,5输出4,7
function sum(arr){
var s=[]
for(var i=1;i<arr.length;i++){
var count=0;
for(var j=0;j<i;j++){
if(arr[j]>arr[i]){
count++;
}
}
if(count==1){
s.push(i);
}
}
if(s.length==0){return -1}
return s;
}