Software Engineering/Algorithm
[LeetCode] K Radius Subarray Averages
devhrkim
2024. 6. 10. 14:20
풀이
class Solution {
public int[] getAverages(int[] nums, int k) {
long[] prefix = new long[nums.length];
int[] answer = new int[nums.length];
prefix[0] = nums[0];
for(int i=1; i<nums.length; i++) {
prefix[i] = prefix[i-1] + nums[i];
}
for(int i=0; i<nums.length; i++) {
if(i-k>=0 && i+k<nums.length)
answer[i] = (int) ((prefix[i+k]-((i-k > 0)? prefix[i-k-1] : 0))/(2*k+1));
else
answer[i]=-1;
}
return answer;
}
}
오늘 Arrays and Strings 完!