トップ 一覧 Farm 検索 ヘルプ RSS ログイン

2006ra5.cppの変更点

  • 追加された行はこのように表示されます。
  • 削除された行はこのように表示されます。
 #include <iostream>
 using namespace std;
 #define TK 20
 main()
 {
 	while(1){
 		int n,tx[TK],ty[TK];
 		cin >> n;
 		if(n==0) break;
 		for(int i=0; i<n; i++){
 			int x,y;
 			cin >> x >> y;
 			tx[i]=x;
 			ty[i]=y;
 		}
 		int m;
 		cin >> m;
 		int x,y;
 		x=y=10;
 		int takara=n;
 		for(int i=0; i<m; i++){
 			char d;
 			int move;
 			cin >> d >> move;
 			for(int j=0; j<move; j++){
 				switch(d){
 					case 'N':y++; break;
 					case 'E':x++; break;
 					case 'W':x--; break;
 					case 'S':y--; break;
 				}
 				for(int k=0; k<n; k++){
 					if(tx[k]==x && tx[k]==y){
 						tx[k]=ty[k]=-1;
 						takara--;
 					}
 				}
 			}
 		}
 		if(takara>0){
 			cout << "No" << endl;
 		}else{
 			cout << "Yes" << endl;
 		}
 	}
 	return 0;
 }