1 solutions
-
1
#include<bits/stdc++.h> using namespace std; int b[2001][2001]; char a[2000][2000]; const int dx[8]={0,1,0,-1,-1,1,-1,1}; const int dy[8]={1,0,-1,0,-1,1,1,-1}; int main(){ int t; cin>>t; while(t--){ int n,m,k; cin>>n>>m>>k; int x,y,d; cin>>x>>y>>d; memset(b,0,sizeof(b)); for(int i=1;i<=n;i++){ for(int j=1;j<=m;j++){ cin>>a[i][j]; } } int we=1; b[x][y]=1; for(int i=1;i<=k;i++){ int nx=dx[d],ny=dy[d]; x+=nx; y+=ny; if(x>n||y>m||x<1||y<1||a[x][y]=='x'){ x-=nx; y-=ny; d=(d+1)%4; continue; } if(b[x][y]==0){ we++; b[x][y]=1; } } cout<<we<<'\n'; } //第一个首发题解!!!! 防抄标记 return 0; }
- 1
Information
- ID
- 10703
- Time
- 1000ms
- Memory
- 512MiB
- Difficulty
- 2
- Tags
- # Submissions
- 35
- Accepted
- 4
- Uploaded By