题解 | #缺失的括号#
缺失的括号
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; }