int minimumDeletions(int* nums, int numsSize){
if(numsSize==1){
return 1;
}
int min=100000;
int max=-100000;
int min_index;
int max_index;
for(int a=0;a<numsSize;a++){
if(nums[a]<min){
min=nums[a];
min_index=a;
}
if(nums[a]>max){
max=nums[a];
max_index=a;
}
}
int left=min_index>max_index?min_index+1:max_index+1;
int right=max_index<min_index?numsSize-max_index:numsSize-min_index;
int record=left<right?left:right;
if(max_index<numsSize-1-max_index&&min_index>numsSize-1-min_index){
return record<max_index+1+numsSize-min_index?record:max_index+1+numsSize-min_index;
}
else if(max_index<numsSize-1-max_index&&min_index<numsSize-1-min_index){
return record<(max_index>min_index?max_index+1:min_index+1)?record:max_index>min_index?max_index+1:min_index+1;
}
else if(max_index>numsSize-1-max_index&&min_index<numsSize-1-min_index){
return record<min_index+1+numsSize-max_index?record:min_index+1+numsSize-max_index;
}
else if(max_index>numsSize-1-max_index&&min_index>numsSize-1-min_index){
return record<numsSize-(max_index<min_index?max_index:min_index)?record:numsSize-(max_index<min_index?max_index:min_index);
}
else if(max_index==numsSize-1-max_index){
return record<max_index+1?record:max_index+1;
}
else if(min_index==numsSize-1-min_index){
return record<min_index+1?record:min_index+1;
}
return;
}
02-18
465
11-14
435