File tree Expand file tree Collapse file tree 3 files changed +61
-0
lines changed
solution/2500-2599/2589.Minimum Time to Complete All Tasks Expand file tree Collapse file tree 3 files changed +61
-0
lines changed Original file line number Diff line number Diff line change @@ -163,6 +163,28 @@ func findMinimumTime(tasks [][]int) (ans int) {
163
163
}
164
164
```
165
165
166
+ ### ** TypeScript**
167
+
168
+ ``` ts
169
+ function findMinimumTime(tasks : number [][]): number {
170
+ tasks .sort ((a , b ) => a [1 ] - b [1 ]);
171
+ const vis = new Array (2010 ).fill (0 );
172
+ let ans = 0 ;
173
+ for (let [start, end, duration] of tasks ) {
174
+ for (let i = start ; i <= end ; ++ i ) {
175
+ duration -= vis [i ];
176
+ }
177
+ for (let i = end ; i >= start && duration > 0 ; -- i ) {
178
+ if (vis [i ] === 0 ) {
179
+ -- duration ;
180
+ ans += vis [i ] = 1 ;
181
+ }
182
+ }
183
+ }
184
+ return ans ;
185
+ }
186
+ ```
187
+
166
188
### ** ...**
167
189
168
190
```
Original file line number Diff line number Diff line change @@ -143,6 +143,28 @@ func findMinimumTime(tasks [][]int) (ans int) {
143
143
}
144
144
```
145
145
146
+ ### ** TypeScript**
147
+
148
+ ``` ts
149
+ function findMinimumTime(tasks : number [][]): number {
150
+ tasks .sort ((a , b ) => a [1 ] - b [1 ]);
151
+ const vis = new Array (2010 ).fill (0 );
152
+ let ans = 0 ;
153
+ for (let [start, end, duration] of tasks ) {
154
+ for (let i = start ; i <= end ; ++ i ) {
155
+ duration -= vis [i ];
156
+ }
157
+ for (let i = end ; i >= start && duration > 0 ; -- i ) {
158
+ if (vis [i ] === 0 ) {
159
+ -- duration ;
160
+ ans += vis [i ] = 1 ;
161
+ }
162
+ }
163
+ }
164
+ return ans ;
165
+ }
166
+ ```
167
+
146
168
### ** ...**
147
169
148
170
```
Original file line number Diff line number Diff line change
1
+ function findMinimumTime ( tasks : number [ ] [ ] ) : number {
2
+ tasks . sort ( ( a , b ) => a [ 1 ] - b [ 1 ] ) ;
3
+ const vis = new Array ( 2010 ) . fill ( 0 ) ;
4
+ let ans = 0 ;
5
+ for ( let [ start , end , duration ] of tasks ) {
6
+ for ( let i = start ; i <= end ; ++ i ) {
7
+ duration -= vis [ i ] ;
8
+ }
9
+ for ( let i = end ; i >= start && duration > 0 ; -- i ) {
10
+ if ( vis [ i ] === 0 ) {
11
+ -- duration ;
12
+ ans += vis [ i ] = 1 ;
13
+ }
14
+ }
15
+ }
16
+ return ans ;
17
+ }
You can’t perform that action at this time.
0 commit comments