暂存

 1 #include <bits/stdc++.h>
 2 using namespace std;
 3 const int N=1e4+10;
 4 struct node
 5 {
 6     char type;
 7     int id;
 8 };
 9 int main()
10 {
11     int T,n;
12     cin>>T>>n;
13     while(T--)
14     {
15         queue<node> q[n];
16         for(int i=0;i<n;i++)
17         {
18             string s; char ch;
19             while(cin>>s)
20             {
21                 node x;
22                 x.type=s[0];
23                 string t=s.substr(1);
24                 int num=atoi(t.c_str());
25                 x.id=num;
26                 q[i].push(x);
27                 if((ch=cin.get())=='\n') break;
28             }
29         }
30         bool flag=true;
31         while(flag)
32         {
33             int fail=0,done=0;
34             for(int i=0;i<n;i++)
35             {
36                 if(!q[i].empty())
37                 {
38                     node x=q[i].front();
39                     int id=x.id;
40                     if(q[id].empty())
41                     {
42                         cout<<1<<endl;
43                         flag=false;
44                         break;
45                     }
46                     else if(q[id].front().id==i && q[id].front().type!=x.type)
47                     {
48                         q[id].pop();
49                         q[i].pop();
50                     }
51                     else fail++;
52                 }
53                 else done++;
54             }
55             if(done==n)
56             {
57                 cout<<0<<endl;
58                 break;
59             }
60             else if(done+fail==n)
61             {
62                 cout<<1<<endl;
63                 break;
64             }
65         }
66     }
67     return 0;
68 }

 

posted @ 2022-10-08 18:20  SAKURA12  阅读(43)  评论(0编辑  收藏  举报