acgo题库
  • 首页
  • 题库
  • 题单
  • 竞赛
  • 讨论
  • 排行
  • 团队
  • 备赛专区

    竞赛

    • CSP-J/S
    • 蓝桥杯

    考级

    • GESP
    • CPA
    • 电子学会考级
登录
注册
题目详情题解(0)讨论(0)提交记录(0)
  • 全网首发

    #include <bits/stdc++.h> using namespace std; int x[18]={-1,1,0,0,-1,-1,1,1}; int y[18]={0,0,-1,1,-1,1,-1,1}; int main() { int n,m,x1,y1,a[101][101]={},ans=1,s=1; bool b[101][101]={}; cin >>n>>m>>x1>>y1; a[x1][y1]=1; b[x1][y1]=true; while(ans!=n*m){ for(int j=1;j<=n;j++){ for(int i=1;i<=m;i++){ if(a[j][i]!=0&&b[j][i]==true){ for(int k=0;k<8;k++){ if(a[j+x[k]][i+y[k]]==0&&j+x[k]>=1&&j+x[k]<=n&&i+y[k]>=1&&i+y[k]<=m){ ans++; a[j+x[k]][i+y[k]]=s; b[j+x[k]][i+y[k]]=false; } } } } }s++; for(int j=1;j<=n;j++){ for(int i=1;i<=m;i++){ if(a[j][i]!=0){ b[j][i]=true; } } } }a[x1][y1]=0; for(int j=1;j<=n;j++){ for(int i=1;i<=m;i++){ cout<<a[j][i]<<" "; }cout<<endl; }cout<<s-1; return 0; }

    userId_undefined

    何浩天

    秩序白银
    36阅读
    2回复
    0点赞
首页