warriorprincess
05/24/2018, 6:56 PMclass Solution {
fun longestValidParentheses(s: String): Int {
var longest = 0; var balance = 0
(0 until s.length).forEach outer@{ i ->
balance = 0
(i until s.length).forEach inner@{ j ->
if (s[j] == '(') balance += 1 else balance -= 1
if (balance < 0) return@outer
if (balance == 0 && j-1 > longest) longest = j-i
}
}
return longest
}
}
fun main(args: Array<String>) {
val s = Solution()
println(s.longestValidParentheses("(()"))
}