题解 | #缺失的括号#

缺失的括号

http://www.nowcoder.com/practice/68ca281b53324db585ba9b46782a263f


#include<stdio.h>
#include<string.h>

int main(){
    //right存放未配对的右括号
    int right = 0;
    //left存放未配对的左括号
    int left = 0;
    char s[51] = {0};
    scanf("%s\n",s);
    int len = strlen(s);
    for(int i = 0; i < len; i++){
        //如果为左括号,则++
        if(s[i]=='('){
            left++;
        }
        //否则当前为右括号,如果存在未配对的左括号,则配对成功,左括号--;否则,未配对右括号+1(以后也不会被配对成功)。
        else{
            if(left>0){
                left--;
            }
            else right++;
        }
    }
    //当前剩余的括号总数即为最小需要补充的数量
    printf("%d",left+right);
    return 0;
}


全部评论

相关推荐

评论
1
收藏
分享
牛客网
牛客企业服务