Repository navigation
Expand file tree
/
Copy pathsolution.java
More file actions
68 lines (66 loc) · 1.79 KB
/
Copy pathsolution.java
File metadata and controls
68 lines (66 loc) · 1.79 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
// 57. Insert Interval
// https://leetcode.com/problems/insert-interval/
// Medium | java | Accepted on NeetCode 2026-09-04
class Solution {
public int[][] insert(int[][] intervals, int[] newInterval) {
if(intervals.length==0)
{
int[][] ansss = new int[1][2];
ansss[0] = newInterval;
return ansss;
}
int count = 0;
int[][] ans = new int[1000][2];
int ind = 0;
int stop = 0;
for(int i = 0; i<intervals.length; i++)
{
if(intervals[i][1]<newInterval[0])
{
ans[ind] = intervals[i];
ind++;
}
if(intervals[i][1]>=newInterval[0])
{
stop = i;
break;
}
if(i==intervals.length-1)
{
stop = intervals.length;
break;
}
}
for(int j = stop; j<intervals.length; j++)
{
if(intervals[j][0]<=newInterval[1])
{
newInterval[0] = Math.min(intervals[j][0], newInterval[0]);
newInterval[1] = Math.max(intervals[j][1], newInterval[1]);
}
if(intervals[j][0]>newInterval[1])
{
stop = j;
break;
}
if(j==intervals.length-1)
{
stop = intervals.length;
break;
}
}
ans[ind] = newInterval;
ind++;
for(int k = stop; k<intervals.length; k++)
{
ans[ind] = intervals[k];
ind++;
}
int[][] anss = new int[ind][2];
for(int l = 0; l<anss.length; l++)
{
anss[l] = ans[l];
}
return anss;
}
}