Sample test cases of the problem Here's my code i submitted, its not working. def is_balanced_and_unique(s): stack = [] segments = [] for char in s: if char == '(': stack.append(char) elif char == ')': if not stack: return False stack.pop() if stack: return False stack = [] segments_info = [] for i, char in enumerate(s): if char == '(': stack.append(i) elif char == ')': if stack: start = stack.pop() segment = s[start + 1:i] segments_info.append((start, i, segment)) for start, end, segment in segments_info: chars = [] for c in segment: if c != '(' and c != ')': chars.append(c) if len(chars) != len(set(chars)): return False global_chars = [] for c in s: if c != '(' and c != ')': global_chars.append(c) if len(global_chars) != len(set(global_chars)): return False return True T = int(input()) for _ in range(T): s = input().strip() if is_balanced_and_unique(s): print("YES") else: print("NO") Continue reading...