File tree 13 files changed +14
-38
lines changed
s0939_minimum_area_rectangle
s0957_prison_cells_after_n_days
s1027_longest_arithmetic_subsequence
s1029_two_city_scheduling
s1081_smallest_subsequence_of_distinct_characters
g1201_1300/s1235_maximum_profit_in_job_scheduling
s1353_maximum_number_of_events_that_can_be_attended
s1366_rank_teams_by_votes
s1383_maximum_performance_of_a_team
s1387_sort_integers_by_the_power_value
g1401_1500/s1489_find_critical_and_pseudo_critical_edges_in_minimum_spanning_tree
13 files changed +14
-38
lines changed Original file line number Diff line number Diff line change @@ -3,7 +3,6 @@ package g0901_1000.s0939_minimum_area_rectangle
3
3
// #Medium #Array #Hash_Table #Math #Sorting #Geometry
4
4
// #2023_04_29_Time_461_ms_(100.00%)_Space_74.8_MB_(20.00%)
5
5
6
- import java.util.Arrays
7
6
import kotlin.math.abs
8
7
9
8
class Solution {
@@ -16,9 +15,7 @@ class Solution {
16
15
map.putIfAbsent(p[0 ], HashSet ())
17
16
map.getValue(p[0 ]).add(p[1 ])
18
17
}
19
- Arrays .sort(
20
- points
21
- ) { a: IntArray , b: IntArray ->
18
+ points.sortWith { a: IntArray , b: IntArray ->
22
19
if (a[0 ] == b[0 ]) Integer .compare(
23
20
a[1 ],
24
21
b[1 ]
Original file line number Diff line number Diff line change @@ -2,16 +2,14 @@ package g0901_1000.s0956_tallest_billboard
2
2
3
3
// #Hard #Array #Dynamic_Programming #2023_05_03_Time_182_ms_(100.00%)_Space_49.8_MB_(100.00%)
4
4
5
- import java.util.Arrays
6
-
7
5
class Solution {
8
6
fun tallestBillboard (rods : IntArray ): Int {
9
7
var maxDiff = 0
10
8
for (rod in rods) {
11
9
maxDiff + = rod
12
10
}
13
11
val dp = IntArray (maxDiff + 1 )
14
- Arrays .fill(dp, - 1 )
12
+ dp .fill(- 1 )
15
13
dp[0 ] = 0
16
14
for (l in rods) {
17
15
val dpOld = IntArray (maxDiff + 1 )
Original file line number Diff line number Diff line change @@ -3,8 +3,6 @@ package g0901_1000.s0957_prison_cells_after_n_days
3
3
// #Medium #Array #Hash_Table #Math #Bit_Manipulation
4
4
// #2023_05_03_Time_172_ms_(100.00%)_Space_36.2_MB_(50.00%)
5
5
6
- import java.util.Arrays
7
-
8
6
@Suppress(" NAME_SHADOWING" )
9
7
class Solution {
10
8
fun prisonAfterNDays (cells : IntArray , n : Int ): IntArray {
@@ -20,7 +18,7 @@ class Solution {
20
18
day++
21
19
n--
22
20
val next = getNextDay(prev)
23
- if (Arrays .equals(next, first)) {
21
+ if (next.contentEquals( first)) {
24
22
period = day - 1
25
23
n % = period
26
24
}
Original file line number Diff line number Diff line change @@ -3,11 +3,9 @@ package g1001_1100.s1024_video_stitching
3
3
// #Medium #Array #Dynamic_Programming #Greedy
4
4
// #2023_05_22_Time_141_ms_(100.00%)_Space_34.8_MB_(100.00%)
5
5
6
- import java.util.Arrays
7
-
8
6
class Solution {
9
7
fun videoStitching (clips : Array <IntArray >, time : Int ): Int {
10
- Arrays .sort( clips) { a: IntArray , b: IntArray ->
8
+ clips.sortWith { a: IntArray , b: IntArray ->
11
9
if (a[0 ] == b[0 ]
12
10
) a[1 ] - b[1 ] else a[0 ] - b[0 ]
13
11
}
Original file line number Diff line number Diff line change @@ -3,8 +3,6 @@ package g1001_1100.s1027_longest_arithmetic_subsequence
3
3
// #Medium #Array #Hash_Table #Dynamic_Programming #Binary_Search
4
4
// #2023_05_23_Time_330_ms_(100.00%)_Space_101.4_MB_(16.67%)
5
5
6
- import java.util.Arrays
7
-
8
6
class Solution {
9
7
fun longestArithSeqLength (nums : IntArray ): Int {
10
8
val max = maxElement(nums)
@@ -13,7 +11,7 @@ class Solution {
13
11
val n = nums.size
14
12
val dp = Array (n) { IntArray (2 * diff + 2 ) }
15
13
for (d in dp) {
16
- Arrays .fill(d, 1 )
14
+ d .fill(1 )
17
15
}
18
16
var ans = 0
19
17
for (i in 0 until n) {
Original file line number Diff line number Diff line change @@ -2,11 +2,9 @@ package g1001_1100.s1029_two_city_scheduling
2
2
3
3
// #Medium #Array #Sorting #Greedy #2023_05_24_Time_148_ms_(100.00%)_Space_35.4_MB_(92.31%)
4
4
5
- import java.util.Arrays
6
-
7
5
class Solution {
8
6
fun twoCitySchedCost (costs : Array <IntArray >): Int {
9
- Arrays .sort( costs) { a: IntArray , b: IntArray ->
7
+ costs.sortWith { a: IntArray , b: IntArray ->
10
8
a[0 ] - a[1 ] - (b[0 ] - b[1 ])
11
9
}
12
10
var cost = 0
Original file line number Diff line number Diff line change @@ -3,7 +3,6 @@ package g1001_1100.s1081_smallest_subsequence_of_distinct_characters
3
3
// #Medium #String #Greedy #Stack #Monotonic_Stack
4
4
// #2023_06_02_Time_146_ms_(100.00%)_Space_34_MB_(100.00%)
5
5
6
- import java.util.Arrays
7
6
import java.util.Deque
8
7
import java.util.LinkedList
9
8
@@ -13,7 +12,7 @@ class Solution {
13
12
val stk: Deque <Char > = LinkedList ()
14
13
val freq = IntArray (26 )
15
14
val exist = BooleanArray (26 )
16
- Arrays .fill(exist, false )
15
+ exist .fill(false )
17
16
for (ch in s.toCharArray()) {
18
17
freq[ch.code - ' a' .code]++
19
18
}
Original file line number Diff line number Diff line change @@ -3,8 +3,6 @@ package g1201_1300.s1235_maximum_profit_in_job_scheduling
3
3
// #Hard #Array #Dynamic_Programming #Sorting #Binary_Search
4
4
// #2023_06_09_Time_370_ms_(100.00%)_Space_49.5_MB_(84.00%)
5
5
6
- import java.util.Arrays
7
-
8
6
class Solution {
9
7
fun jobScheduling (startTime : IntArray , endTime : IntArray , profit : IntArray ): Int {
10
8
val n = startTime.size
@@ -14,7 +12,7 @@ class Solution {
14
12
time[i][1 ] = endTime[i]
15
13
time[i][2 ] = profit[i]
16
14
}
17
- Arrays .sort( time, { a: IntArray , b: IntArray -> a[1 ].compareTo(b[1 ]) })
15
+ time.sortWith { a: IntArray , b: IntArray -> a[1 ].compareTo(b[1 ]) }
18
16
val maxP = Array (n) { IntArray (2 ) }
19
17
var lastPos = - 1
20
18
var currProfit: Int
Original file line number Diff line number Diff line change @@ -3,12 +3,11 @@ package g1301_1400.s1353_maximum_number_of_events_that_can_be_attended
3
3
// #Medium #Array #Greedy #Heap_Priority_Queue
4
4
// #2023_06_06_Time_728_ms_(100.00%)_Space_103.1_MB_(80.00%)
5
5
6
- import java.util.Arrays
7
6
import java.util.PriorityQueue
8
7
9
8
class Solution {
10
9
fun maxEvents (events : Array <IntArray >): Int {
11
- Arrays .sort( events) { a: IntArray , b: IntArray -> a[0 ] - b[0 ] }
10
+ events.sortWith { a: IntArray , b: IntArray -> a[0 ] - b[0 ] }
12
11
var ans = 0
13
12
var i = 0
14
13
val pq = PriorityQueue <Int >()
Original file line number Diff line number Diff line change @@ -3,8 +3,6 @@ package g1301_1400.s1366_rank_teams_by_votes
3
3
// #Medium #Array #String #Hash_Table #Sorting #Counting
4
4
// #2023_06_06_Time_179_ms_(100.00%)_Space_36.9_MB_(93.33%)
5
5
6
- import java.util.Arrays
7
-
8
6
class Solution {
9
7
internal class Node (var c : Char ) {
10
8
var count = IntArray (26 )
@@ -20,9 +18,8 @@ class Solution {
20
18
nodes[vote[i].code - ' A' .code]!! .count[i]++
21
19
}
22
20
}
23
- Arrays .sort(
24
- nodes
25
- ) { o1: Node ? , o2: Node ? ->
21
+
22
+ nodes.sortWith sort@{ o1: Node ? , o2: Node ? ->
26
23
for (i in 0 .. 25 ) {
27
24
if (o1!! .count[i] != o2!! .count[i]) {
28
25
return @sort o2.count[i] - o1.count[i]
Original file line number Diff line number Diff line change @@ -3,7 +3,6 @@ package g1301_1400.s1383_maximum_performance_of_a_team
3
3
// #Hard #Array #Sorting #Greedy #Heap_Priority_Queue
4
4
// #2023_06_06_Time_427_ms_(100.00%)_Space_50.2_MB_(100.00%)
5
5
6
- import java.util.Arrays
7
6
import java.util.PriorityQueue
8
7
9
8
class Solution {
@@ -13,7 +12,7 @@ class Solution {
13
12
engineers[i][0 ] = speed[i]
14
13
engineers[i][1 ] = efficiency[i]
15
14
}
16
- Arrays .sort( engineers) { engineer1: IntArray , engineer2: IntArray -> engineer2[1 ] - engineer1[1 ] }
15
+ engineers.sortWith { engineer1: IntArray , engineer2: IntArray -> engineer2[1 ] - engineer1[1 ] }
17
16
var speedSum: Long = 0
18
17
var maximumPerformance: Long = 0
19
18
val minHeap = PriorityQueue <Int >()
Original file line number Diff line number Diff line change @@ -3,8 +3,6 @@ package g1301_1400.s1387_sort_integers_by_the_power_value
3
3
// #Medium #Dynamic_Programming #Sorting #Memoization
4
4
// #2023_06_06_Time_370_ms_(100.00%)_Space_39.8_MB_(100.00%)
5
5
6
- import java.util.Arrays
7
-
8
6
class Solution {
9
7
private lateinit var cacheMap: MutableMap <Int , Int >
10
8
@@ -16,7 +14,7 @@ class Solution {
16
14
arr[i][0 ] = lo + i
17
15
arr[i][1 ] = getStepCount(lo + i)
18
16
}
19
- Arrays .sort( arr) { a: IntArray , b: IntArray -> a[1 ].compareTo(b[1 ]) }
17
+ arr.sortWith { a: IntArray , b: IntArray -> a[1 ].compareTo(b[1 ]) }
20
18
return arr[k - 1 ][0 ]
21
19
}
22
20
Original file line number Diff line number Diff line change @@ -3,7 +3,6 @@ package g1401_1500.s1489_find_critical_and_pseudo_critical_edges_in_minimum_span
3
3
// #Hard #Sorting #Graph #Union_Find #Minimum_Spanning_Tree #Strongly_Connected_Component
4
4
// #2023_06_13_Time_342_ms_(100.00%)_Space_39.1_MB_(100.00%)
5
5
6
- import java.util.Arrays
7
6
import java.util.LinkedList
8
7
9
8
class Solution {
@@ -25,7 +24,7 @@ class Solution {
25
24
mst[i] = LinkedList ()
26
25
}
27
26
val mstSet = BooleanArray (edges.size)
28
- Arrays .sort( edges) { a: IntArray , b: IntArray ->
27
+ edges.sortWith { a: IntArray , b: IntArray ->
29
28
Integer .compare(
30
29
a[2 ], b[2 ]
31
30
)
You can’t perform that action at this time.
0 commit comments