注册 登录  
 加关注
查看详情
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

Yavin(某沙茶的代码库)

Star Wars fan and OIer

 
 
 

日志

 
 

SGU344 水  

2012-08-21 20:53:59|  分类: SGU300系列 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
又是水题一道

#include<cstdio>
#include<cstdlib>
#include<algorithm>
#include<queue>
#include<iostream>
using namespace std;

typedef pair<int,int> grid;
const int MAX=1000+10;

queue<grid> q;
int walk[4][2]={1,0,0,1,-1,0,0,-1};
int n,m,attack[MAX][MAX],hash[MAX][MAX];
char g[MAX][MAX];

int main()
{
#ifndef ONLINE_JUDGE
freopen("input.txt","r",stdin);freopen("output.txt","w",stdout);
#endif
int i,j,x,y,nx,ny,ans=0;
scanf("%d %d",&n,&m);
for(i=1;i<=n;++i)
scanf("%s",g[i]+1);
for(i=1;i<=n;++i)
for(j=1;j<=m;++j)
if(g[i][j]=='X')
{
hash[i][j]=1;
q.push(make_pair(i,j));
}
for(i=0;i<=n+1;++i)hash[i][0]=hash[i][m+1]=1;
for(i=0;i<=m+1;++i)hash[0][i]=hash[n+1][i]=1;
while(!q.empty())
{
x=q.front().first,y=q.front().second;
q.pop();
g[x][y]='X';
++ans;
for(i=0;i<4;++i)
{
nx=x+walk[i][0],ny=y+walk[i][1];
++attack[nx][ny];
if(attack[nx][ny]>=2 && !hash[nx][ny])
{
hash[nx][ny]=1;
q.push(make_pair(nx,ny));
}
}
}
printf("%d\n",ans);
}




  评论这张
 
阅读(122)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018