Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package g0201_0300.s0222_count_complete_tree_nodes

// #Easy #Depth_First_Search #Tree #Binary_Search #Binary_Tree #Binary_Search_II_Day_10
// #Top_Interview_150_Binary_Tree_General #2025_02_08_Time_0_(100.00%)_Space_41.04_(43.09%)
// #Top_Interview_150_Binary_Tree_General #2025_02_08_Time_0_ms_(100.00%)_Space_41.04_MB_(43.09%)

import com_github_leetcode.TreeNode

Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package g3301_3400.s3393_count_paths_with_the_given_xor_value

// #Medium #Array #Dynamic_Programming #Math #Matrix #Bit_Manipulation
// #2024_12_30_Time_57_(68.42%)_Space_73.12_(52.63%)
// #2024_12_30_Time_57_ms_(68.42%)_Space_73.12_MB_(52.63%)

class Solution {
private var m = -1
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package g3301_3400.s3394_check_if_grid_can_be_cut_into_sections

// #Medium #Geometry #Line_Sweep #2025_01_06_Time_61_(100.00%)_Space_152.17_(45.00%)
// #Medium #Geometry #Line_Sweep #2025_01_06_Time_61_ms_(100.00%)_Space_152.17_MB_(45.00%)

import kotlin.math.max

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package g3301_3400.s3395_subsequences_with_a_unique_middle_mode_i

// #Hard #Array #Hash_Table #Math #Combinatorics #2025_01_06_Time_49_(100.00%)_Space_41.14_(100.00%)
// #Hard #Array #Hash_Table #Math #Combinatorics
// #2025_01_06_Time_49_ms_(100.00%)_Space_41.14_MB_(100.00%)

class Solution {
private val c2 = LongArray(1001)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package g3401_3500.s3402_minimum_operations_to_make_columns_strictly_increasing

// #Easy #Matrix #Simulation #2024_12_29_Time_1_(100.00%)_Space_44.94_(100.00%)
// #Easy #Matrix #Simulation #2024_12_29_Time_1_ms_(100.00%)_Space_44.94_MB_(100.00%)

class Solution {
fun minimumOperations(grid: Array<IntArray>): Int {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package g3401_3500.s3403_find_the_lexicographically_largest_string_from_the_box_i

// #Medium #String #Two_Pointers #Enumeration #2024_12_29_Time_22_(100.00%)_Space_38.72_(100.00%)
// #Medium #String #Two_Pointers #Enumeration
// #2024_12_29_Time_22_ms_(100.00%)_Space_38.72_MB_(100.00%)

import kotlin.math.min

Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package g3401_3500.s3404_count_special_subsequences

// #Medium #Array #Hash_Table #Math #Enumeration
// #2024_12_29_Time_276_(100.00%)_Space_60.90_(100.00%)
// #2024_12_29_Time_276_ms_(100.00%)_Space_60.90_MB_(100.00%)

class Solution {
fun numberOfSubsequences(nums: IntArray): Long {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package g3401_3500.s3405_count_the_number_of_arrays_with_k_matching_adjacent_elements

// #Hard #Math #Combinatorics #2024_12_29_Time_57_(100.00%)_Space_37.63_(100.00%)
// #Hard #Math #Combinatorics #2024_12_29_Time_57_ms_(100.00%)_Space_37.63_MB_(100.00%)

class Solution {
fun countGoodArrays(n: Int, m: Int, k: Int): Int {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package g3401_3500.s3407_substring_matching_pattern

// #Easy #String #String_Matching #2025_01_07_Time_2_(100.00%)_Space_38.80_(35.14%)
// #Easy #String #String_Matching #2025_01_07_Time_2_ms_(100.00%)_Space_38.80_MB_(35.14%)

class Solution {
fun hasMatch(s: String, p: String): Boolean {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package g3401_3500.s3408_design_task_manager

// #Medium #Hash_Table #Design #Heap_Priority_Queue #Ordered_Set
// #2025_01_07_Time_405_(88.24%)_Space_263.70_(5.88%)
// #2025_01_07_Time_405_ms_(88.24%)_Space_263.70_MB_(5.88%)

import java.util.TreeSet

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package g3401_3500.s3409_longest_subsequence_with_decreasing_adjacent_difference

// #Medium #Array #Dynamic_Programming #2025_01_07_Time_70_(100.00%)_Space_57.87_(85.71%)
// #Medium #Array #Dynamic_Programming #2025_01_07_Time_70_ms_(100.00%)_Space_57.87_MB_(85.71%)

import kotlin.math.max

Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package g3401_3500.s3410_maximize_subarray_sum_after_removing_all_occurrences_of_one_element

// #Hard #Array #Dynamic_Programming #Segment_Tree
// #2025_01_07_Time_80_(100.00%)_Space_68.87_(100.00%)
// #2025_01_07_Time_80_ms_(100.00%)_Space_68.87_MB_(100.00%)

import kotlin.math.max
import kotlin.math.min
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package g3401_3500.s3411_maximum_subarray_with_equal_products

// #Easy #Array #Math #Sliding_Window #Enumeration #Number_Theory
// #2025_01_07_Time_7_(60.71%)_Space_36.33_(92.86%)
// #2025_01_07_Time_7_ms_(60.71%)_Space_36.33_MB_(92.86%)

import kotlin.math.max

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package g3401_3500.s3412_find_mirror_score_of_a_string

// #Medium #String #Hash_Table #Stack #Simulation #2025_01_07_Time_17_(96.15%)_Space_40.02_(80.77%)
// #Medium #String #Hash_Table #Stack #Simulation
// #2025_01_07_Time_17_ms_(96.15%)_Space_40.02_MB_(80.77%)

class Solution {
fun calculateScore(s: String): Long {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package g3401_3500.s3413_maximum_coins_from_k_consecutive_bags

// #Medium #Array #Sorting #Greedy #Binary_Search #Prefix_Sum #Sliding_Window
// #2025_01_08_Time_275_(86.67%)_Space_125.92_(80.00%)
// #2025_01_08_Time_275_ms_(86.67%)_Space_125.92_MB_(80.00%)

import kotlin.math.max

Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package g3401_3500.s3414_maximum_score_of_non_overlapping_intervals

// #Hard #Array #Dynamic_Programming #Sorting #Binary_Search
// #2025_01_09_Time_892_(100.00%)_Space_91.42_(100.00%)
// #2025_01_09_Time_892_ms_(100.00%)_Space_91.42_MB_(100.00%)

class Solution {
fun maximumWeight(intervals: List<List<Int>>): IntArray {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package g3401_3500.s3417_zigzag_grid_traversal_with_skip

// #Easy #Array #Matrix #Simulation #2025_01_14_Time_2_(100.00%)_Space_43.72_(76.92%)
// #Easy #Array #Matrix #Simulation #2025_01_14_Time_2_ms_(100.00%)_Space_43.72_MB_(76.92%)

class Solution {
fun zigzagTraversal(grid: Array<IntArray>): List<Int> {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package g3401_3500.s3418_maximum_amount_of_money_robot_can_earn

// #Medium #Array #Dynamic_Programming #Matrix #2025_01_14_Time_60_(81.82%)_Space_84.66_(81.82%)
// #Medium #Array #Dynamic_Programming #Matrix
// #2025_01_14_Time_60_ms_(81.82%)_Space_84.66_MB_(81.82%)

import kotlin.math.max

Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package g3401_3500.s3419_minimize_the_maximum_edge_weight_of_graph

// #Medium #Depth_First_Search #Breadth_First_Search #Binary_Search #Graph #Shortest_Path
// #2025_01_14_Time_88_(100.00%)_Space_115.26_(83.33%)
// #2025_01_14_Time_88_ms_(100.00%)_Space_115.26_MB_(83.33%)

import java.util.LinkedList
import java.util.Queue
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package g3401_3500.s3420_count_non_decreasing_subarrays_after_k_operations

// #Hard #Array #Two_Pointers #Stack #Monotonic_Stack #Queue #Segment_Tree #Monotonic_Queue
// #2025_01_15_Time_28_(100.00%)_Space_68.93_(88.89%)
// #2025_01_15_Time_28_ms_(100.00%)_Space_68.93_MB_(88.89%)

class Solution {
fun countNonDecreasingSubarrays(nums: IntArray, k: Int): Long {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package g3401_3500.s3423_maximum_difference_between_adjacent_elements_in_a_circular_array

// #Easy #Array #2025_01_19_Time_2_(100.00%)_Space_38.80_(100.00%)
// #Easy #Array #2025_01_19_Time_2_ms_(100.00%)_Space_38.80_MB_(100.00%)

import kotlin.math.abs
import kotlin.math.max
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package g3401_3500.s3424_minimum_cost_to_make_arrays_identical

// #Medium #Array #Sorting #Greedy #2025_01_23_Time_38_(100.00%)_Space_64.36_(97.14%)
// #Medium #Array #Sorting #Greedy #2025_01_23_Time_38_ms_(100.00%)_Space_64.36_MB_(97.14%)

import kotlin.math.abs
import kotlin.math.min
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package g3401_3500.s3425_longest_special_path

// #Hard #Array #Hash_Table #Depth_First_Search #Tree #Sliding_Window
// #2025_01_19_Time_106_(100.00%)_Space_187.68_(100.00%)
// #2025_01_19_Time_106_ms_(100.00%)_Space_187.68_MB_(100.00%)

class Solution {
private lateinit var adj: Array<ArrayList<IntArray>>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package g3401_3500.s3426_manhattan_distances_of_all_arrangements_of_pieces

// #Hard #Math #Combinatorics #2025_01_19_Time_21_(100.00%)_Space_34.61_(100.00%)
// #Hard #Math #Combinatorics #2025_01_19_Time_21_ms_(100.00%)_Space_34.61_MB_(100.00%)

class Solution {
private fun comb(a: Long, b: Long, mod: Long): Long {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package g3401_3500.s3427_sum_of_variable_length_subarrays

// #Easy #Array #Prefix_Sum #2025_01_22_Time_0_(100.00%)_Space_43.77_(58.41%)
// #Easy #Array #Prefix_Sum #2025_01_22_Time_0_ms_(100.00%)_Space_43.77_MB_(58.41%)

class Solution {
fun subarraySum(nums: IntArray): Int {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package g3401_3500.s3428_maximum_and_minimum_sums_of_at_most_size_k_subsequences

// #Medium #Array #Dynamic_Programming #Math #Sorting #Combinatorics
// #2025_01_22_Time_167_(77.78%)_Space_75.34_(66.67%)
// #2025_01_22_Time_167_ms_(77.78%)_Space_75.34_MB_(66.67%)

class Solution {
private lateinit var fact: LongArray
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package g3401_3500.s3429_paint_house_iv

// #Medium #Array #Dynamic_Programming #2025_01_22_Time_10_(100.00%)_Space_119.77_(84.62%)
// #Medium #Array #Dynamic_Programming #2025_01_22_Time_10_ms_(100.00%)_Space_119.77_MB_(84.62%)

import kotlin.math.min

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package g3401_3500.s3430_maximum_and_minimum_sums_of_at_most_size_k_subarrays

// #Hard #Array #Math #Stack #Monotonic_Stack #2025_01_22_Time_31_(100.00%)_Space_74.84_(24.24%)
// #Hard #Array #Math #Stack #Monotonic_Stack
// #2025_01_22_Time_31_ms_(100.00%)_Space_74.84_MB_(24.24%)

import kotlin.math.min

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package g3401_3500.s3432_count_partitions_with_even_sum_difference

// #Easy #Array #Math #Prefix_Sum #2025_01_26_Time_2_(100.00%)_Space_35.68_(100.00%)
// #Easy #Array #Math #Prefix_Sum #2025_01_26_Time_2_ms_(100.00%)_Space_35.68_MB_(100.00%)

import kotlin.math.abs

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package g3401_3500.s3433_count_mentions_per_user

// #Medium #Array #Math #Sorting #Simulation #2025_01_29_Time_52_(100.00%)_Space_47.22_(60.71%)
// #Medium #Array #Math #Sorting #Simulation
// #2025_01_29_Time_52_ms_(100.00%)_Space_47.22_MB_(60.71%)

class Solution {
fun countMentions(numberOfUsers: Int, events: List<List<String>>): IntArray {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package g3401_3500.s3434_maximum_frequency_after_subarray_operation

// #Medium #Array #Hash_Table #Dynamic_Programming #Greedy #Prefix_Sum
// #2025_01_26_Time_51_(100.00%)_Space_56.51_(100.00%)
// #2025_01_26_Time_51_ms_(100.00%)_Space_56.51_MB_(100.00%)

import kotlin.math.max

Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package g3401_3500.s3435_frequencies_of_shortest_supersequences

// #Hard #Array #String #Bit_Manipulation #Graph #Enumeration #Topological_Sort
// #2025_01_29_Time_35_(100.00%)_Space_43.62_(100.00%)
// #2025_01_29_Time_35_ms_(100.00%)_Space_43.62_MB_(100.00%)

class Solution {
private var m = 0
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Write your MySQL query statement below
# #Easy #2025_02_04_Time_451_(70.84%)_Space_0.0_(100.00%)
# #Easy #2025_02_04_Time_451_ms_(70.84%)_Space_0.0_MB_(100.00%)
select user_id, email from users
where email regexp '^[A-Za-z0-9_]+@[A-Za-z][A-Za-z0-9_]*\.com$'
order by user_id
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package g3401_3500.s3438_find_valid_pair_of_adjacent_digits_in_string

// #Easy #String #Hash_Table #Counting #2025_02_05_Time_2_(93.18%)_Space_36.38_(100.00%)
// #Easy #String #Hash_Table #Counting #2025_02_05_Time_2_ms_(93.18%)_Space_36.38_MB_(100.00%)

class Solution {
fun findValidPair(s: String): String {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package g3401_3500.s3439_reschedule_meetings_for_maximum_free_time_i

// #Medium #Array #Greedy #Sliding_Window #2025_02_05_Time_5_(80.00%)_Space_78.59_(17.14%)
// #Medium #Array #Greedy #Sliding_Window #2025_02_05_Time_5_ms_(80.00%)_Space_78.59_MB_(17.14%)

import kotlin.math.max

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package g3401_3500.s3440_reschedule_meetings_for_maximum_free_time_ii

// #Medium #Array #Greedy #Enumeration #2025_02_05_Time_8_(100.00%)_Space_70.10_(68.00%)
// #Medium #Array #Greedy #Enumeration #2025_02_05_Time_8_ms_(100.00%)_Space_70.10_MB_(68.00%)

import kotlin.math.max

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package g3401_3500.s3441_minimum_cost_good_caption

// #Hard #String #Dynamic_Programming #2025_02_05_Time_78_(100.00%)_Space_51.28_(100.00%)
// #Hard #String #Dynamic_Programming #2025_02_05_Time_78_ms_(100.00%)_Space_51.28_MB_(100.00%)

import kotlin.math.abs
import kotlin.math.min
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package g3401_3500.s3442_maximum_difference_between_even_and_odd_frequency_i

// #Easy #String #Hash_Table #Counting #2025_02_05_Time_1_(100.00%)_Space_36.02_(91.30%)
// #Easy #String #Hash_Table #Counting #2025_02_05_Time_1_ms_(100.00%)_Space_36.02_MB_(91.30%)

import kotlin.math.max
import kotlin.math.min
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package g3401_3500.s3443_maximum_manhattan_distance_after_k_changes

// #Medium #String #Hash_Table #Math #Counting #2025_02_05_Time_52_(100.00%)_Space_39.63_(100.00%)
// #Medium #String #Hash_Table #Math #Counting
// #2025_02_05_Time_52_ms_(100.00%)_Space_39.63_MB_(100.00%)

import kotlin.math.max
import kotlin.math.min
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package g3401_3500.s3444_minimum_increments_for_target_multiples_in_an_array

// #Hard #Array #Dynamic_Programming #Math #Bit_Manipulation #Bitmask #Number_Theory
// #2025_02_05_Time_34_(100.00%)_Space_44.36_(100.00%)
// #2025_02_05_Time_34_ms_(100.00%)_Space_44.36_MB_(100.00%)

import kotlin.math.min

Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package g3401_3500.s3445_maximum_difference_between_even_and_odd_frequency_ii

// #Hard #String #Prefix_Sum #Sliding_Window #Enumeration
// #2025_02_05_Time_84_(83.33%)_Space_50.62_(66.67%)
// #2025_02_05_Time_84_ms_(83.33%)_Space_50.62_MB_(66.67%)

import kotlin.math.max

Expand Down