隔離された街のゲート [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 }