隔離された街のゲート [MISSION LEVEL: B]

 1 #include <bits/stdc++.h>
 2 #define _for(i,a,b) for(int i = (a),i##end=(b);i < i##end;i ++)
 3 #define pb push_back
 4 using namespace std;
 5 
 6 int main()
 7 {
 8     int H,W,N;
 9     while(~scanf("%d%d%d",&H,&W,&N))
10     {
11         int x = 0,y = 0;
12         int valid = 1;
13         _for(i,0,N)
14         {
15             char c;
16             cin >> c;
17             if(c=='U')
18                 y ++;
19             else if(c=='R')
20                 x ++;
21             else if(c=='D')
22                 y --;
23             else if(c=='L')
24                 x --;
25             if(x<0||x>=W||y<0||y>=H)
26                 valid = 0;
27         } 
28         if(!valid)
29             cout << "invalid";
30         else
31             cout << "valid";
32     }
33     return 0;
34 }

猜你喜欢

转载自www.cnblogs.com/Asurudo/p/10313050.html