Skip to content

Commit 5ab98b0

Browse files
authored
Improved arrays
1 parent 61d417c commit 5ab98b0

File tree

23 files changed

+48
-91
lines changed
  • src/main/kotlin
    • g1501_1600/s1594_maximum_non_negative_product_in_a_matrix
    • g1801_1900/s1886_determine_whether_matrix_can_be_obtained_by_rotation
    • g1901_2000
      • s1942_the_number_of_the_smallest_unoccupied_chair
      • s1985_find_the_kth_largest_integer_in_the_array
      • s1996_the_number_of_weak_characters_in_the_game
    • g2001_2100
    • g2101_2200/s2136_earliest_possible_day_of_full_bloom
    • g2201_2300
      • s2250_count_number_of_rectangles_containing_each_point
      • s2251_number_of_flowers_in_full_bloom
      • s2271_maximum_white_tiles_covered_by_a_carpet
      • s2280_minimum_lines_to_represent_a_line_chart
    • g2401_2500
    • g2501_2600
    • g2701_2800
    • g3001_3100/s3068_find_the_maximum_sum_of_node_values

23 files changed

+48
-91
lines changed

src/main/kotlin/g1501_1600/s1594_maximum_non_negative_product_in_a_matrix/Solution.kt

+18-23
Original file line numberDiff line numberDiff line change
@@ -6,43 +6,38 @@ package g1501_1600.s1594_maximum_non_negative_product_in_a_matrix
66
class Solution {
77
private class Tuple(var max: Long, var min: Long)
88

9-
fun maxProductPath(grid: Array<IntArray?>?): Int {
9+
fun maxProductPath(grid: Array<IntArray>): Int {
1010
// DP
11-
if (grid == null || grid.size == 0 || grid[0] == null || grid[0]!!.size == 0) {
11+
if (grid.isEmpty() || grid[0].isEmpty()) {
1212
return 0
1313
}
1414
val rows = grid.size
15-
val cols = grid[0]!!.size
16-
val dp = Array(rows) { arrayOfNulls<Tuple>(cols) }
17-
for (i in 0 until rows) {
18-
for (j in 0 until cols) {
19-
dp[i][j] = Tuple(1, 1)
20-
}
21-
}
15+
val cols = grid[0].size
16+
val dp = Array(rows) { Array(cols) { Tuple(1, 1) } }
2217
// Init first row and column
23-
dp[0][0]!!.max = grid[0]!![0].toLong()
24-
dp[0][0]!!.min = grid[0]!![0].toLong()
18+
dp[0][0].max = grid[0][0].toLong()
19+
dp[0][0].min = grid[0][0].toLong()
2520
for (i in 1 until rows) {
26-
dp[i][0]!!.max = grid[i]!![0] * dp[i - 1][0]!!.max
27-
dp[i][0]!!.min = grid[i]!![0] * dp[i - 1][0]!!.min
21+
dp[i][0].max = grid[i][0] * dp[i - 1][0].max
22+
dp[i][0].min = grid[i][0] * dp[i - 1][0].min
2823
}
2924
for (i in 1 until cols) {
30-
dp[0][i]!!.max = grid[0]!![i] * dp[0][i - 1]!!.max
31-
dp[0][i]!!.min = grid[0]!![i] * dp[0][i - 1]!!.min
25+
dp[0][i].max = grid[0][i] * dp[0][i - 1].max
26+
dp[0][i].min = grid[0][i] * dp[0][i - 1].min
3227
}
3328
// DP
3429
for (i in 1 until rows) {
3530
for (j in 1 until cols) {
36-
val up1 = dp[i - 1][j]!!.max * grid[i]!![j]
37-
val up2 = dp[i - 1][j]!!.min * grid[i]!![j]
38-
val left1 = dp[i][j - 1]!!.max * grid[i]!![j]
39-
val left2 = dp[i][j - 1]!!.min * grid[i]!![j]
40-
dp[i][j]!!.max = Math.max(up1, Math.max(up2, Math.max(left1, left2)))
41-
dp[i][j]!!.min = Math.min(up1, Math.min(up2, Math.min(left1, left2)))
31+
val up1 = dp[i - 1][j].max * grid[i][j]
32+
val up2 = dp[i - 1][j].min * grid[i][j]
33+
val left1 = dp[i][j - 1].max * grid[i][j]
34+
val left2 = dp[i][j - 1].min * grid[i][j]
35+
dp[i][j].max = Math.max(up1, Math.max(up2, Math.max(left1, left2)))
36+
dp[i][j].min = Math.min(up1, Math.min(up2, Math.min(left1, left2)))
4237
}
4338
}
44-
return if (dp[rows - 1][cols - 1]!!.max < 0) {
39+
return if (dp[rows - 1][cols - 1].max < 0) {
4540
-1
46-
} else (dp[rows - 1][cols - 1]!!.max % (1e9 + 7)).toInt()
41+
} else (dp[rows - 1][cols - 1].max % (1e9 + 7)).toInt()
4742
}
4843
}

src/main/kotlin/g1801_1900/s1886_determine_whether_matrix_can_be_obtained_by_rotation/Solution.kt

+2-4
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,10 @@ package g1801_1900.s1886_determine_whether_matrix_can_be_obtained_by_rotation
33
// #Easy #Array #Matrix #Programming_Skills_II_Day_7
44
// #2023_06_22_Time_147_ms_(85.71%)_Space_34.1_MB_(100.00%)
55

6-
import java.util.Arrays
7-
86
class Solution {
9-
fun findRotation(mat: Array<IntArray>, target: Array<IntArray?>?): Boolean {
7+
fun findRotation(mat: Array<IntArray>, target: Array<IntArray>): Boolean {
108
for (i in 0..3) {
11-
if (Arrays.deepEquals(mat, target)) {
9+
if (mat.contentDeepEquals(target)) {
1210
return true
1311
}
1412
rotate(mat)

src/main/kotlin/g1901_2000/s1942_the_number_of_the_smallest_unoccupied_chair/Solution.kt

+2-4
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ package g1901_2000.s1942_the_number_of_the_smallest_unoccupied_chair
33
// #Medium #Array #Heap_Priority_Queue #Ordered_Set
44
// #2023_06_20_Time_549_ms_(100.00%)_Space_63.6_MB_(100.00%)
55

6-
import java.util.Arrays
76
import java.util.PriorityQueue
87

98
class Solution {
@@ -15,9 +14,8 @@ class Solution {
1514
all[2 * i] = Person(i, times[i][0], false, true)
1615
all[2 * i + 1] = Person(i, times[i][1], true, false)
1716
}
18-
Arrays.sort(
19-
all
20-
) { a: Person?, b: Person? ->
17+
18+
all.sortWith { a: Person?, b: Person? ->
2119
val i = if (a!!.leave) -1 else 1
2220
val j = if (b!!.leave) -1 else 1
2321
if (a.time == b.time) i - j else a.time - b.time

src/main/kotlin/g1901_2000/s1985_find_the_kth_largest_integer_in_the_array/Solution.kt

+2-4
Original file line numberDiff line numberDiff line change
@@ -3,19 +3,17 @@ package g1901_2000.s1985_find_the_kth_largest_integer_in_the_array
33
// #Medium #Array #String #Sorting #Heap_Priority_Queue #Divide_and_Conquer #Quickselect
44
// #2023_06_21_Time_397_ms_(100.00%)_Space_55.3_MB_(66.67%)
55

6-
import java.util.Arrays
7-
86
class Solution {
97
fun kthLargestNumber(nums: Array<String>, k: Int): String {
10-
Arrays.sort(nums) { n1: String, n2: String -> compareStringInt(n2, n1) }
8+
nums.sortWith { n1: String, n2: String -> compareStringInt(n2, n1) }
119
return nums[k - 1]
1210
}
1311

1412
private fun compareStringInt(n1: String, n2: String): Int {
1513
if (n1.length != n2.length) {
1614
return if (n1.length < n2.length) -1 else 1
1715
}
18-
for (i in 0 until n1.length) {
16+
for (i in n1.indices) {
1917
val n1Digit = n1[i].code - '0'.code
2018
val n2Digit = n2[i].code - '0'.code
2119
if (n1Digit > n2Digit) {

src/main/kotlin/g1901_2000/s1996_the_number_of_weak_characters_in_the_game/Solution.kt

+1-3
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,9 @@ package g1901_2000.s1996_the_number_of_weak_characters_in_the_game
33
// #Medium #Array #Sorting #Greedy #Stack #Monotonic_Stack
44
// #2023_06_21_Time_1234_ms_(100.00%)_Space_98.2_MB_(100.00%)
55

6-
import java.util.Arrays
7-
86
class Solution {
97
fun numberOfWeakCharacters(properties: Array<IntArray>): Int {
10-
Arrays.sort(properties) { a: IntArray, b: IntArray -> if (a[0] == b[0]) b[1] - a[1] else a[0] - b[0] }
8+
properties.sortWith { a: IntArray, b: IntArray -> if (a[0] == b[0]) b[1] - a[1] else a[0] - b[0] }
119
var max = properties[properties.size - 1][1]
1210
var count = 0
1311
for (i in properties.size - 2 downTo 0) {

src/main/kotlin/g2001_2100/s2008_maximum_earnings_from_taxi/Solution.kt

+1-2
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,13 @@ package g2001_2100.s2008_maximum_earnings_from_taxi
33
// #Medium #Array #Dynamic_Programming #Sorting #Binary_Search
44
// #2023_06_23_Time_1008_ms_(100.00%)_Space_67.3_MB_(100.00%)
55

6-
import java.util.Arrays
76
import java.util.PriorityQueue
87

98
@Suppress("UNUSED_PARAMETER")
109
class Solution {
1110
fun maxTaxiEarnings(n: Int, rides: Array<IntArray>): Long {
1211
// Sort based on start time
13-
Arrays.sort(rides) { a: IntArray, b: IntArray ->
12+
rides.sortWith { a: IntArray, b: IntArray ->
1413
a[0] - b[0]
1514
}
1615
var max: Long = 0

src/main/kotlin/g2001_2100/s2054_two_best_non_overlapping_events/Solution.kt

+1-3
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,9 @@ package g2001_2100.s2054_two_best_non_overlapping_events
33
// #Medium #Array #Dynamic_Programming #Sorting #Binary_Search #Heap_Priority_Queue
44
// #2023_06_25_Time_851_ms_(100.00%)_Space_108.7_MB_(50.00%)
55

6-
import java.util.Arrays
7-
86
class Solution {
97
fun maxTwoEvents(events: Array<IntArray>): Int {
10-
Arrays.sort(events) { a: IntArray, b: IntArray -> a[0] - b[0] }
8+
events.sortWith { a: IntArray, b: IntArray -> a[0] - b[0] }
119
val max = IntArray(events.size)
1210
for (i in events.indices.reversed()) {
1311
if (i == events.size - 1) {

src/main/kotlin/g2001_2100/s2092_find_all_people_with_secret/Solution.kt

+1-3
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,10 @@ package g2001_2100.s2092_find_all_people_with_secret
33
// #Hard #Sorting #Depth_First_Search #Breadth_First_Search #Graph #Union_Find
44
// #2023_06_28_Time_1086_ms_(100.00%)_Space_104.2_MB_(100.00%)
55

6-
import java.util.Arrays
7-
86
@Suppress("NAME_SHADOWING")
97
class Solution {
108
fun findAllPeople(n: Int, meetings: Array<IntArray>, firstPerson: Int): List<Int> {
11-
Arrays.sort(meetings) { a: IntArray, b: IntArray -> a[2] - b[2] }
9+
meetings.sortWith { a: IntArray, b: IntArray -> a[2] - b[2] }
1210
val uf = UF(n)
1311
// base
1412
uf.union(0, firstPerson)

src/main/kotlin/g2101_2200/s2136_earliest_possible_day_of_full_bloom/Solution.kt

+1-2
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ package g2101_2200.s2136_earliest_possible_day_of_full_bloom
22

33
// #Hard #Array #Sorting #Greedy #2023_06_25_Time_968_ms_(100.00%)_Space_57.2_MB_(100.00%)
44

5-
import java.util.Arrays
65
import java.util.Collections
76

87
class Solution {
@@ -15,7 +14,7 @@ class Solution {
1514
for (i in 0 until n) {
1615
arr[i] = Seed(plantTime[i], growTime[i])
1716
}
18-
Arrays.sort(arr, Collections.reverseOrder())
17+
arr.sortWith(Collections.reverseOrder())
1918
var ans = arr[0]!!.plantTime + arr[0]!!.growTime
2019
var lastPlantDay = arr[0]!!.plantTime
2120
for (i in 1 until n) {

src/main/kotlin/g2201_2300/s2250_count_number_of_rectangles_containing_each_point/Solution.kt

+1-3
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,6 @@ package g2201_2300.s2250_count_number_of_rectangles_containing_each_point
33
// #Medium #Array #Sorting #Binary_Search #Binary_Indexed_Tree
44
// #2023_06_27_Time_967_ms_(100.00%)_Space_85.4_MB_(100.00%)
55

6-
import java.util.Arrays
7-
86
class Solution {
97
fun countRectangles(rectangles: Array<IntArray>, points: Array<IntArray>): IntArray {
108
val n = rectangles.size
@@ -14,7 +12,7 @@ class Solution {
1412
for (i in 0 until q) {
1513
es[n + i] = intArrayOf(points[i][0], points[i][1], i)
1614
}
17-
Arrays.sort(es) { x: IntArray?, y: IntArray? -> if (x!![0] != y!![0]) -(x[0] - y[0]) else x.size - y.size }
15+
es.sortWith { x: IntArray?, y: IntArray? -> if (x!![0] != y!![0]) -(x[0] - y[0]) else x.size - y.size }
1816
val ct = IntArray(101)
1917
val ans = IntArray(q)
2018
for (e in es) {

src/main/kotlin/g2201_2300/s2251_number_of_flowers_in_full_bloom/Solution.kt

+3-4
Original file line numberDiff line numberDiff line change
@@ -3,21 +3,20 @@ package g2201_2300.s2251_number_of_flowers_in_full_bloom
33
// #Hard #Array #Hash_Table #Sorting #Binary_Search #Prefix_Sum #Ordered_Set
44
// #2023_06_28_Time_973_ms_(100.00%)_Space_88.6_MB_(100.00%)
55

6-
import java.util.Arrays
76
import java.util.PriorityQueue
87

98
class Solution {
109
fun fullBloomFlowers(flowers: Array<IntArray>, persons: IntArray): IntArray {
11-
Arrays.sort(flowers, { a: IntArray, b: IntArray -> a[0].compareTo(b[0]) })
10+
flowers.sortWith { a: IntArray, b: IntArray -> a[0].compareTo(b[0]) }
1211
val ans = IntArray(persons.size)
13-
val pq = PriorityQueue({ a: Pair, b: Pair -> a.j.compareTo(b.j) })
12+
val pq = PriorityQueue { a: Pair, b: Pair -> a.j.compareTo(b.j) }
1413
var j = 0
1514
val t = Array(persons.size) { IntArray(2) }
1615
for (i in persons.indices) {
1716
t[i][0] = persons[i]
1817
t[i][1] = i
1918
}
20-
Arrays.sort(t, { a: IntArray, b: IntArray -> a[0].compareTo(b[0]) })
19+
t.sortWith { a: IntArray, b: IntArray -> a[0].compareTo(b[0]) }
2120
for (ints in t) {
2221
while (pq.isNotEmpty()) {
2322
if (pq.peek().j < ints[0]) {

src/main/kotlin/g2201_2300/s2271_maximum_white_tiles_covered_by_a_carpet/Solution.kt

+1-3
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,9 @@ package g2201_2300.s2271_maximum_white_tiles_covered_by_a_carpet
33
// #Medium #Array #Sorting #Greedy #Binary_Search #Prefix_Sum
44
// #2023_06_28_Time_692_ms_(100.00%)_Space_66.2_MB_(100.00%)
55

6-
import java.util.Arrays
7-
86
class Solution {
97
fun maximumWhiteTiles(tiles: Array<IntArray>, carpetLength: Int): Int {
10-
Arrays.sort(tiles, { x: IntArray, y: IntArray -> x[0].compareTo(y[0]) })
8+
tiles.sortWith { x: IntArray, y: IntArray -> x[0].compareTo(y[0]) }
119
var currentCover = Math.min(tiles[0][1] - tiles[0][0] + 1, carpetLength)
1210
var maxCover = currentCover
1311
var head = 1

src/main/kotlin/g2201_2300/s2280_minimum_lines_to_represent_a_line_chart/Solution.kt

+1-3
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,12 @@ package g2201_2300.s2280_minimum_lines_to_represent_a_line_chart
33
// #Medium #Array #Math #Sorting #Geometry #Number_Theory
44
// #2023_06_28_Time_765_ms_(100.00%)_Space_98.8_MB_(100.00%)
55

6-
import java.util.Arrays
7-
86
class Solution {
97
fun minimumLines(stockPrices: Array<IntArray>): Int {
108
if (stockPrices.size == 1) {
119
return 0
1210
}
13-
Arrays.sort(stockPrices) { a: IntArray, b: IntArray -> a[0] - b[0] }
11+
stockPrices.sortWith { a: IntArray, b: IntArray -> a[0] - b[0] }
1412
// multiply with 1.0 to make it double and multiply with 100 for making it big so that
1513
// difference won't come out to be very less and after division it become 0.
1614
// failing for one of the case without multiply 100

src/main/kotlin/g2401_2500/s2402_meeting_rooms_iii/Solution.kt

+1-3
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,11 @@ package g2401_2500.s2402_meeting_rooms_iii
33
// #Hard #Array #Sorting #Heap_Priority_Queue
44
// #2023_07_03_Time_976_ms_(100.00%)_Space_108.7_MB_(66.67%)
55

6-
import java.util.Arrays
7-
86
class Solution {
97
fun mostBooked(n: Int, meetings: Array<IntArray>): Int {
108
val counts = IntArray(n)
119
val endTimes = LongArray(n)
12-
Arrays.sort(meetings) { a: IntArray, b: IntArray -> Integer.compare(a[0], b[0]) }
10+
meetings.sortWith { a: IntArray, b: IntArray -> Integer.compare(a[0], b[0]) }
1311
for (meeting in meetings) {
1412
val id = findRoomId(endTimes, meeting[0])
1513
counts[id]++

src/main/kotlin/g2401_2500/s2463_minimum_total_distance_traveled/Solution.kt

+1-3
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,12 @@ package g2401_2500.s2463_minimum_total_distance_traveled
33
// #Hard #Array #Dynamic_Programming #Sorting
44
// #2023_07_05_Time_153_ms_(100.00%)_Space_37_MB_(100.00%)
55

6-
import java.util.Arrays
7-
86
class Solution {
97
fun minimumTotalDistance(robot: List<Int>, f: Array<IntArray>): Long {
108
// sort factories :
119
// 1. move all factories with 0-capacity to the end
1210
// 2. sort everything else by x-position in asc order
13-
Arrays.sort(f) { a: IntArray, b: IntArray -> if (a[1] == 0) 1 else if (b[1] == 0) -1 else a[0] - b[0] }
11+
f.sortWith { a: IntArray, b: IntArray -> if (a[1] == 0) 1 else if (b[1] == 0) -1 else a[0] - b[0] }
1412
// Sort robots by x-position in asc order
1513
// As we don't know the implementation of the List that is passed, it is better to map it to
1614
// an array explicitly

src/main/kotlin/g2501_2600/s2503_maximum_number_of_points_from_grid_queries/Solution.kt

+2-3
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ package g2501_2600.s2503_maximum_number_of_points_from_grid_queries
44
// #2023_07_04_Time_581_ms_(100.00%)_Space_62.6_MB_(100.00%)
55

66
import java.util.ArrayDeque
7-
import java.util.Arrays
87
import java.util.PriorityQueue
98
import java.util.Queue
109

@@ -19,9 +18,9 @@ class Solution {
1918
for (i in queries.indices) {
2019
index[i] = i
2120
}
22-
Arrays.sort(index, { o: Int?, m: Int? -> queries[o!!].compareTo(queries[m!!]) })
21+
index.sortWith { o: Int?, m: Int? -> queries[o!!].compareTo(queries[m!!]) }
2322
val q1: Queue<IntArray> = ArrayDeque()
24-
val q2 = PriorityQueue({ a: IntArray, b: IntArray -> a[2].compareTo(b[2]) })
23+
val q2 = PriorityQueue { a: IntArray, b: IntArray -> a[2].compareTo(b[2]) }
2524
q2.offer(intArrayOf(0, 0, grid[0][0]))
2625
val visited = Array(r) { BooleanArray(c) }
2726
var count = 0

src/main/kotlin/g2501_2600/s2542_maximum_subsequence_score/Solution.kt

+2-4
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ package g2501_2600.s2542_maximum_subsequence_score
33
// #Medium #Array #Sorting #Greedy #Heap_Priority_Queue
44
// #2023_07_04_Time_780_ms_(81.97%)_Space_56.7_MB_(99.45%)
55

6-
import java.util.Arrays
76
import java.util.PriorityQueue
87

98
class Solution {
@@ -15,9 +14,8 @@ class Solution {
1514
for (i in 0 until n) {
1615
nums[i] = PairInfo(nums1[i], nums2[i])
1716
}
18-
Arrays.sort(
19-
nums
20-
) { a: PairInfo?, b: PairInfo? ->
17+
18+
nums.sortWith sort@{ a: PairInfo?, b: PairInfo? ->
2119
if (a!!.val2 == b!!.val2) {
2220
return@sort a.val1 - b.val1
2321
}

src/main/kotlin/g2501_2600/s2545_sort_the_students_by_their_kth_score/Solution.kt

+1-3
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,9 @@ package g2501_2600.s2545_sort_the_students_by_their_kth_score
22

33
// #Medium #Array #Sorting #Matrix #2023_07_04_Time_442_ms_(100.00%)_Space_53.3_MB_(100.00%)
44

5-
import java.util.Arrays
6-
75
class Solution {
86
fun sortTheStudents(score: Array<IntArray>, k: Int): Array<IntArray> {
9-
Arrays.sort(score) { o1: IntArray, o2: IntArray -> o2[k] - o1[k] }
7+
score.sortWith { o1: IntArray, o2: IntArray -> o2[k] - o1[k] }
108
return score
119
}
1210
}

src/main/kotlin/g2501_2600/s2580_count_ways_to_group_overlapping_ranges/Solution.kt

+1-3
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,11 @@ package g2501_2600.s2580_count_ways_to_group_overlapping_ranges
22

33
// #Medium #Array #Sorting #2023_07_10_Time_669_ms_(100.00%)_Space_122.8_MB_(50.00%)
44

5-
import java.util.Arrays
6-
75
@Suppress("NAME_SHADOWING")
86
class Solution {
97
fun countWays(ranges: Array<IntArray>): Int {
108
var cnt = 1
11-
Arrays.sort(ranges) { a, b -> if (a[0] != b[0]) a[0] - b[0] else a[1] - b[1] }
9+
ranges.sortWith { a, b -> if (a[0] != b[0]) a[0] - b[0] else a[1] - b[1] }
1210
var curr = ranges[0]
1311
for (i in 1 until ranges.size) {
1412
if (ranges[i][1] < curr[0] || ranges[i][0] > curr[1]) {

src/main/kotlin/g2501_2600/s2589_minimum_time_to_complete_all_tasks/Solution.kt

+1-3
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,11 @@ package g2501_2600.s2589_minimum_time_to_complete_all_tasks
33
// #Hard #Array #Sorting #Greedy #Binary_Search #Stack
44
// #2023_07_12_Time_422_ms_(100.00%)_Space_58.7_MB_(50.00%)
55

6-
import java.util.Arrays
7-
86
class Solution {
97
fun findMinimumTime(tasks: Array<IntArray>): Int {
108
var res = 0
119
val arr = BooleanArray(2001)
12-
Arrays.sort(tasks) { a: IntArray, b: IntArray ->
10+
tasks.sortWith { a: IntArray, b: IntArray ->
1311
a[1] - b[1]
1412
}
1513
for (task in tasks) {

src/main/kotlin/g2701_2800/s2719_count_of_integers/Solution.kt

+1-3
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,6 @@ package g2701_2800.s2719_count_of_integers
22

33
// #Hard #String #Dynamic_Programming #Math #2023_08_02_Time_208_ms_(100.00%)_Space_38_MB_(68.42%)
44

5-
import java.util.Arrays
6-
75
class Solution {
86
private lateinit var dp: Array<Array<Array<IntArray>>>
97
private fun countStrings(i: Int, tight1: Boolean, tight2: Boolean, sum: Int, num1: String, num2: String): Int {
@@ -41,7 +39,7 @@ class Solution {
4139
for (dim1 in dp) {
4240
for (dim2 in dim1) {
4341
for (dim3 in dim2) {
44-
Arrays.fill(dim3, -1)
42+
dim3.fill(-1)
4543
}
4644
}
4745
}

0 commit comments

Comments
 (0)