QY18. 缺失的括号
描述
一个完整的括号字符串定义规则如下:输入描述
输入包括一行,一个括号序列s,序列长度length(1 ≤ length ≤ 50). s中每个字符都是左括号或者右括号,即'('或者')'.输出描述
输出一个整数,表示最少需要添加的括号数示例1
输入:
(()(()
输出:
2
C 解法, 执行用时: 2ms, 内存消耗: 296KB, 提交时间: 2021-12-22
#include<stdio.h> #include<string.h> int main(){ char str[60]; int i,left=0,right=0,sum=0; scanf("%s",str); for(i=0;i<strlen(str);i++){ if(str[i]=='('){ left++; }else{ right++; } if(right>left){ left++; sum++; } } sum+=left-right; printf("%d",sum); return 0; }
C 解法, 执行用时: 2ms, 内存消耗: 316KB, 提交时间: 2021-10-17
int main() { char str[1000000]; gets(str); int len=strlen(str); int count=0; int need=0; for(int i=0;i<len;i++) { if(count==-1) { need++; count=0; } if(str[i]=='(') count++; else if(str[i]==')') count--; } int z=abs(count); printf("%d",z+need); return 0; }