We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 20a62bf commit 9f3a6afCopy full SHA for 9f3a6af
kotlin/0131-palindrome-partitioning.kt
@@ -0,0 +1,36 @@
1
+class Solution {
2
+ fun partition(s: String): List<List<String>> {
3
+ val res = mutableListOf<MutableList<String>>()
4
+ val part = mutableListOf<String>()
5
+
6
+ fun isPalindrome(_l: Int, _r: Int): Boolean {
7
+ var l = _l
8
+ var r = _r
9
+ while (l < r) {
10
+ if (s[l] != s[r])
11
+ return false
12
+ l++
13
+ r--
14
+ }
15
+ return true
16
17
18
+ fun dfs(i: Int) {
19
+ if (i >= s.length) {
20
+ res.add(part.toMutableList())
21
+ return
22
23
24
+ for (j in i until s.length) {
25
+ if (isPalindrome(i, j)) {
26
+ part.add(s.substring(i, j + 1))
27
+ dfs(j + 1)
28
+ part.removeAt(part.lastIndex)
29
30
31
32
33
+ dfs(0)
34
+ return res
35
36
+}
0 commit comments