• + 0 comments

    char brackets[3][2] = { {'['. ']'}, {'(', ')'}, {'{', '}'}, }; char* isBalanced(char* s) { char* stack = calloc(sizeof(char),strlen(s)); int tos = 0; char b; while((b = *s)){ for(int i = 0; i < 3; i++) { if(brackets[i][0] ==b) { stack[tos++] = b; } else if(brackets[i][1] = b) { char left_b = stack[--tos]; if(brackets[i][O] == b) { char left_b = stack[--tos]; if(brackets[i][O] == b){ stack[tos++] = b; } else if((brackets[i][1] == b) { char left_b = stack[--tos]; if(brackets[i][O] != left_b){ return "NO"; } } } ++s; }free(stack); returntosv == 0 ?"YES" : "NO"; }