public class Solution
{
public int FindPoisonedDuration(int[] timeSeries, int duration)
{
//for each attack, duration+=duration
//in case of overlap, j - i + duration
//we used i+1 so we check for array out of bound
int total_time = 0;
//if there was no attack
if (timeSeries.Length == 0) return 0;
for(int i=0; i<timeSeries.Length-1; i++)
{
if(timeSeries[i]+duration-1 < timeSeries[i + 1])
{
total_time += duration;
}
else
{
total_time += timeSeries[i + 1] - timeSeries[i];
}
}
// last i+1 aka attack will be at full duration
total_time += duration;
return total_time;
}
}