通过代码:
#include <bits/stdc++.h> using namespace std; string s; bool avl[101]; int main() { while(getline(cin,s)) { printf("%s\n", s.c_str()); memset(avl, true, sizeof(avl)); for(int i = 0; i < s.size(); i ++) { if(s[i] == '(') { int mid = 0; bool patched = false; for(int j = i + 1; j < s.size(); j ++) if(s[j] == '(') mid ++; else if(s[j] == ')' && mid != 0) mid --; else if(s[j] == ')' && mid == 0) { patched = true, avl[j] = false; break; } if(patched == false) printf("$"); else printf(" "); continue; } if(s[i] == ')' && avl[i] == true) { printf("?"); continue; } printf(" "); } printf("\n"); } return 0; }
1203:扩号匹配问题
最新推荐文章于 2021-10-24 09:20:36 发布