From 5821c4eb09b03b8b3c6f1260f1f62ebb407df852 Mon Sep 17 00:00:00 2001 From: Ashwagandha-coder Date: Mon, 4 Aug 2025 16:16:02 +0100 Subject: [PATCH 01/29] add 54 --- .../com/github/contest/array/ArrayLeetcode.kt | 39 +++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/contest/src/main/java/com/github/contest/array/ArrayLeetcode.kt b/contest/src/main/java/com/github/contest/array/ArrayLeetcode.kt index 98281ae..6b40a67 100644 --- a/contest/src/main/java/com/github/contest/array/ArrayLeetcode.kt +++ b/contest/src/main/java/com/github/contest/array/ArrayLeetcode.kt @@ -439,4 +439,43 @@ fun maximumDifference(nums: IntArray): Int { return diff } +/** + * 54. Spiral Matrix + */ + +fun spiralOrder(matrix: Array): List = when (matrix.size) { + 1 -> matrix[0].toList() + 2 -> matrix[0].toList() + matrix[1].reversed() + + else -> { + + val res = mutableListOf() + var top = 0 + var bottom = matrix.size - 1 + var left = 0 + var right = matrix[0].size - 1 + + while (top <= bottom && left <= right) { + for (i in left..right) res.add(matrix[top][i]) + top++ + + for (i in top..bottom) res.add(matrix[i][right]) + right-- + + if (top <= bottom) { + for (i in right downTo left) res.add(matrix[bottom][i]) + bottom-- + } + + if (left <= right) { + for (i in bottom downTo top) res.add(matrix[i][left]) + left++ + } + + } + + res + } +} + From c8ed48d13496ac5b60f73ff1f700e71cc4435558 Mon Sep 17 00:00:00 2001 From: Danil M Date: Wed, 10 Sep 2025 12:41:10 -0400 Subject: [PATCH 02/29] add 563 problem --- .idea/appInsightsSettings.xml | 21 ++ .idea/gradle.xml | 1 + .idea/misc.xml | 3 +- .../main/java/com/github/contest/Execute.kt | 10 +- .../contest/binaryTree/BinaryTreeLeetcode.kt | 20 ++ gradle/wrapper/gradle-wrapper.jar | Bin 59203 -> 43583 bytes gradle/wrapper/gradle-wrapper.properties | 5 +- gradlew | 285 +++++++++++------- gradlew.bat | 37 ++- 9 files changed, 251 insertions(+), 131 deletions(-) diff --git a/.idea/appInsightsSettings.xml b/.idea/appInsightsSettings.xml index 6bbe2ae..e77bdba 100644 --- a/.idea/appInsightsSettings.xml +++ b/.idea/appInsightsSettings.xml @@ -2,5 +2,26 @@ \ No newline at end of file diff --git a/.idea/gradle.xml b/.idea/gradle.xml index 96ccfae..db2e8b9 100644 --- a/.idea/gradle.xml +++ b/.idea/gradle.xml @@ -16,5 +16,6 @@ +