1 条题解
-
0
C :
#include <stdio.h> int main() { int ncase; scanf("%d",&ncase); getchar(); while(ncase--) { char ch; int flag = 1; char a[500]; int i = -1; while(scanf("%c",&ch)!=EOF && ch != '\n') { if(ch == ')' ||ch == ']' || ch == '}') { if(i==-1) { flag = 0; } else { if((a[i] == '(' && ch == ')') || (a[i] == '[' && ch == ']') || (a[i] == '{' && ch == '}') ) { i--; } } } else if(ch == '(' || ch == '[' || ch == '{') { i++; a[i] = ch; } else { continue; } } if(flag == 0 || i != -1) { printf("no\n"); } else { printf("yes\n"); } } return 0; }
C++ :
#include<stdio.h> char st[1000000]; char str[1000000]; int main() { int N,i,sp; for(scanf("%d",&N);N--;) { scanf("%s",str); for(i=sp=0;str[i];i++) { if (str[i]=='(' || str[i]=='[' || str[i]=='{') st[sp++]=str[i]; else if (str[i]==')') { if (!sp || st[sp-1]!='(') break; --sp; } else if (str[i]==']') { if (!sp || st[sp-1]!='[') break; --sp; } else if (str[i]=='}') { if (!sp || st[sp-1]!='{') break; --sp; } } if (!str[i] && !sp) puts("yes"); else puts("no"); } return 0; }
- 1
信息
- ID
- 1147
- 时间
- 1000ms
- 内存
- 32MiB
- 难度
- (无)
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者