1. 程式人生 > >蘭頓螞蟻

蘭頓螞蟻

spa nbsp ref namespace name col b- pro max

oj鏈接:http://lx.lanqiao.cn/problem.page?gpid=T125

水題

#include <stdio.h>
#include <memory.h>
#include <math.h>
#include <string>
#include <string.h>
#include <vector>
#include <set>
#include <stack>
#include <queue>
#include <algorithm>
#include 
<map> #define I scanf #define OL puts #define O printf #define F(a,b,c) for(a=b;a<c;a++) #define FF(a,b) for(a=0;a<b;a++) #define FG(a,b) for(a=b-1;a>=0;a--) #define LEN 3000 #define MAX 0x06FFFFFF #define V vector<int> using namespace std; int g[LEN][LEN]; int dx[4],dy[4]; int turnRight(int
op){ op--; if(op<0) return 3; return op; } int turnLeft(int op){ op++; if(op>3) return 0; return op; } int main(){ // http://lx.lanqiao.cn/problem.page?gpid=T125 // freopen("D:/CbWorkspace/blue_bridge/蘭頓螞蟻.txt","r",stdin); //上 U dx[0]=-1,dy[0]=0; //下 D dx[2]=1,dy[2
]=0; //左 L dx[1]=0,dy[1]=-1; //右 R dx[3]=0,dy[3]=1; int m,n,i,j,x,y,op=0,N; I("%d%d",&m,&n) ; for(i=0;i<m;i++){ for(j=0;j<n;j++){ I("%d",&g[i][j]); } } I("%d%d",&x,&y); char cop[2]; I("%s",cop); switch(cop[0]){ case D:op=2;break; case L:op=1;break; case R:op=3;break; } I("%d",&N); while(N--){ // printf("%d %d\n",x,y); if(g[x][y]){ g[x][y]=0; op=turnRight(op); x+=dx[op]; y+=dy[op]; }else{ g[x][y]=1; op=turnLeft(op); x+=dx[op]; y+=dy[op]; } } printf("%d %d\n",x,y); return 0; }

蘭頓螞蟻