看到数据范围是\(1e5\)就大概猜到了不能暴力,尝试了一下也确实TLE了。
class Solution {
public int[] constructArr(int[] a) {
int n = a.length;
int[] res = new int[n];
for(int i = 0; i < n; i++) {
int tmp = 1;
for(int j = 0; j < n; j++) {
if(j != i) {
tmp *= a[j];
}
}
res[i] = tmp;
}
return res;
}
}
时间复杂度为\(O(n^2)\),空间复杂度为\(O(1)\)。
这个数据加强得有点强,以前超宽度太多了