PTA 7-2 堆栈操作合法性(20 分)20分代码

来源:互联网 发布:windows 8 10 whql 编辑:程序博客网 时间:2024/06/05 00:31

(注:博客作为交流使用,切勿抄袭应付作业)


#include <iostream>#include <cstdio>#include <cstdlib>#include <cstring>#include <string>#include <cmath>#include <set>#include <map>#include <stack>#include <queue>#include <ctype.h>#include <vector>#include <algorithm>#include <sstream>#define PI acos(-1.0)#define in freopen("in.txt", "r", stdin)#define out freopen("out.txt", "w", stdout)using namespace std;typedef long long ll;const int maxn = 200 + 7, INF = 0x3f3f3f3f, mod = 1e9 + 7;int n, m, len;char s[maxn];void solve() {    int cnt = 0;    for(int i = 0 ; i < len; ++i) {        if(s[i] == 'S') cnt++;        else if(s[i] == 'X') cnt--;        if(cnt > m || cnt < 0) { puts("NO"); return; }    }    if(cnt != 0) { puts("NO"); return; }    puts("YES");}int main() {    scanf("%d %d", &n, &m);    for(int i = 0; i < n; ++i) {        scanf("%s", s);        len = strlen(s);        solve();    }    return 0;}/*4 10SSSXXSXXSXSSSXXSXXSSSSSSSSSSSXSSXXXXXXXXXXXSSSXXSXXX*/