package main var mBrac = map[rune]rune{ '}': '{', ']': '[', ')': '(', } func isValid(s string) bool { // store all brackets slice := make([]rune, 0) for _, v := range s { if len(slice) == 0 { slice = append(slice, v) continue } // not match if slice[len(slice)-1] != mBrac[v] { slice = append(slice, v) // match } else { slice = slice[:len(slice)-1] } } if len(slice) != 0 { return false } return true }