- 追加された行はこのように表示されます。
- 削除された行は
このように表示されます。
#include <iostream>
using namespace std;
void main()
{
int jn, me;
int xi[10], yi[10], x, y, move;
int i, j;
int flag;
char hou;
while( 1 ){
cin >> jn;
if( !jn ) break;
for( i = 0; i < jn; i++ )
cin >> xi[i] >> yi[i];
cin >> me;
x = y = 10;
flag=0;
for( j = 0; j < me; j++ ){
cin >> hou >> move;
switch( hou ){
case 'N': for(i=0;i<move;i++){
y++;
if(x==xi[j] && y==yi[j])
flag++;
}
break;
case 'S': for(i=0;i<move;i++){
y--;
if(x==xi[j] && y==yi[j])
flag++;
}
break;
case 'E': for(i=0;i<move;i++){
x++;
if(x==xi[j] && y==yi[j])
flag++;
}
break;
case 'W': for(i=0;i<move;i++){
x--;
if(x==xi[j]&&y==yi[j])
flag++;
}
break;
default: break;
}
}
if( flag == jn ) cout << "yes" << endl;
else cout << "no" << endl;
}
}