3 条题解

  • 0
    @ 2024-11-10 21:21:53

    ~1. ~#include<bits/stdc++.h> #include using namespace std; const int N=1010; char mp[N][N]; bool st[N][N]; int dx[]={0,1,0,-1},dy[]={1,0,-1,0}; int main(){ int t; cin>>t; while(t--){ int n,m,k,x,y,d; cin>>n>>m>>k>>x>>y>>d; for(int i=1;i<=n;i++){ for(int j=1;j<=m;j++){ cin>>mp[i][j]; } } int ans=1; st[x][y]=true; while(k--){ int a=x+dx[d],b=y+dy[d]; if(a>=1 && a<=n && b>=1 && b<=m && mp[a][b]=='.') { x=a,y=b; if(!st[a][b]){ ans++; st[a][b]=true; } }else d=(d+1)%4; } cout<<ans<<endl; memset(st,0,sizeof(st)); } return 0; }

    信息

    ID
    2314
    时间
    1000ms
    内存
    256MiB
    难度
    5
    标签
    (无)
    递交数
    47
    已通过
    20
    上传者