public class Solution {
public int findPoisonedDuration(int[] timeSeries, int duration) {
if (timeSeries == null || timeSeries.length < 1) return 0;
int end = timeSeries[0] + duration;
int start = timeSeries[0];
int res = 0;
for (int i = 1; i < timeSeries.length; i++) {
if (timeSeries[i] <= end) {
end = timeSeries[i] + duration;
} else {
res += end - start;
start = timeSeries[i];
end = timeSeries[i] + duration;
}
}
res += end - start;
return res;
}
}
public class Solution {
public int findPoisonedDuration(int[] timeSeries, int duration) {
if (timeSeries == null || timeSeries.length == 0 || duration <= 0)
return 0;
int res = 0, start = timeSeries[0], end = timeSeries[0] + duration;
for (int i = 1; i < timeSeries.length; i++) {
if (timeSeries[i] > end) {
res += end - start;
start = timeSeries[i];
}
end = timeSeries[i] + duration;
}
res += end - start;
return res;
}
}