脑筋急转弯
$ 时间复杂度O(N)$
参考文献
蓝桥杯辅导课
AC代码
#include <iostream>
using namespace std;
const int N = 55;
int x[N];
int n;
int main(){
//读入
cin >> n;
for (int i = 0 ; i < n ; i++) cin >> x[i];
//计算左边向右的和右边向左的
int l = 0, r = 0;
for (int i = 1 ; i < n ; i ++){
if (abs(x[i]) < abs(x[0]) && x[i] > 0) l ++;
else if (abs(x[i]) > abs(x[0]) && x[i] < 0) r ++;
}
//判断感冒蚂蚁的方向讨论
int res = 0;
if (x[0] > 0){
if (r) res = r + l + 1;
else res = 1;
} else {
if (l) res = r + l + 1;
else res = 1;
}
cout << res;
return 0;
}