#include "stdio.h"
#include "stdlib.h"
#include "string.h"
#define max 200
char math[max];
int top = -1;
void Math(char left, char right) {
if (top == -1) {
if (right == '>') {
printf("NO\n?-*/");
} else {
printf("NO\n?-%c", right);
}
exit(0);
}
else if (left == math[top]) {
top--;
}
else {
if (math[top] == '<') {
printf("NO\n/*-?");
} else {
printf("NO\n%c-?", math[top--]);
}
exit(0);
}
}
int main () {
char str[max];
while ((scanf("%s", str) != EOF && str[0] != '.')) {
for (int i = 0; i < strlen(str); i++) {
if (str[i] == '(' || str[i] == '{' || str[i] == '[') {
math[++top] = str[i];
}
else if (str[i] == '/' && str[i + 1] == '*') {
math[++top] = '<';
i++;
}
else if (str[i] == ')')Math('(', str[i]);
else if (str[i] == '}')Math('{', str[i]);
else if (str[i] == ']')Math('[', str[i]);
else if (str[i] == '*' && str[i+1] == '/') {
Math('<', '>');
i++;
}
}
}
if (top == -1)printf("YES\n");
else {
printf("NO\n%c-?", math[top--]);
}
return 0;
}
符号配对pta
最新推荐文章于 2025-08-14 18:10:12 发布