【OJ】Red and black poj1979 // acmclub.com 6659

#include<iostream>
#include<cstdio>
using namespace std;
char tiles[21][21];
int x,y,w,h,ans;
int dx[4]={-1,0,0,1},dy[4]={0,-1,1,0};//^<>
void dfs(int sx,int sy){
	ans++;tiles[sy][sx]='#';
	for(int i=0;i<4;i++){
		int nx=sx+dx[i],ny=sy+dy[i];
		if(nx>=1&&nx<=w&&ny>=1&&ny<=h&&tiles[ny][nx]=='.'/**/)dfs(nx,ny);
	}
}
int main(){
//	freopen("red.txt","r",stdin);
	while(cin>>w>>h&&(w||h)){
		 ans=0;		getchar();
		for(int i=1;i<=h;i++){
	 		for(int j=1;j<=w;j++){
 				tiles[i][j]=getchar();
 				if(tiles[i][j]=='@'){x=j;y=i;}
 			}
	   		getchar();
		}
		dfs(x,y);
		cout<<ans<<endl;
	}

	return 0;
}
时间: 2024-11-02 23:42:45

【OJ】Red and black poj1979 // acmclub.com 6659的相关文章

【OJ】贪心——区间问题 hzu.acmclub.com 1126看电视

题目链接:<a target=_blank href="http://hzu.acmclub.com/index.php?app=problem_title&id=538&problem_id=1126">点击打开链接</a> /* 贪心--区间问题 hzu.acmclub.com 1126看电视 */ #include<iostream> #include<algorithm> using namespace std;

【OJ】1.6.7将军(Check the Check)UVa 10196 // PC 1101017 // acmclub.com 25177

/* 1.6.7将军(Check the Check)UVa 10196 // PC 1101017 // hzu.acmclub.com 25177 */ #include<iostream> #include<stdio.h> using namespace std; char a[10][10]; int x,y,X,Y; int white=0,black=0; /////////////////////////////////blackk void che1(int x,

【OJ】贪心法(最小字典序)poj3617 Best Cow Line// acmclub 12701/12695

     题目链接:      点击打开链接 /* POJ 3617 Best Cow Line 贪心法--最小字典序 */ #include<stdio.h> #include<string.h> char ss[30010]; int main(){ int n,left1;scanf("%d",&n); getchar();//不可少,接收前一个\n for(int j=0;j<n;j++){// // scanf("%c"

【OJ】贪心法 Fence Repair POJ 3253 霍夫曼(Huffman)编码原理 acmclub 12326

题目链接:点击打开链接 /* 贪心法 Fence Repair POJ 3253 霍夫曼(Huffman)编码原理 */ #include<iostream> #include<algorithm> typedef long long LL; using namespace std; int l[50010]; int main(){ int j,m=0,n;cin>>n; LL s=0,ans=0; for(int i=0;i<n;i++)cin>>

【OJ】贪心法 Saruman&#039;s Army POJ 3069 /acmclub 12132

题目链接:点击打开链接 /* 6 10 贪心法Saruman's Army POJ 3069 1 7 15 20 30 50 ans=3 */ #include<iostream> #include<algorithm> using namespace std; int x[1010]; int main(){ // freopen("贪心法 Saruman's Army poj3069.txt","r",stdin); int n,r; w

【OJ】排列 n! STL函数next_permutation // Anagram / hzu.acmclub.com10317 / poj 1256

题目链接:点击打开链接 <pre name="code" class="cpp">/* 排列 n! poj1256 Anagram */ #include<iostream> #include<cstring> #include<cstdio> #include<cctype> #include<algorithm> using namespace std; bool cmp(char a,ch

【OJ】Ants acmclub.com 10913 // poj 1852

#include<iostream> #include<algorithm> #include<cstdio> using namespace std; int shu[1000010]; int main(){ int i,a,b; while(scanf("%d %d",&a,&b)!=EOF){ for( i=0;i<a;i++) scanf("%d",&shu[i]); sort(shu,sh

【OJ】迷宫最短路径问题(maze)acmclub.com 1102

#include<iostream> #include<cstdio> #include<queue> using namespace std; int yy,xx,sx,sy,ex,ey,d[101][101]={0}; char c,maze[101][101]; int dx[4]={-1,1,0,0},dy[4]={0,0,1,-1}; struct NODE{ int nx,ny; }node1,node2; void bfs(){ queue<NODE

【OJ】2014广东省ACM热身赛题目

版权   A.Query (查询) 描述  给你一个数列{A1,A2,...An},并要求支持一系列如下的操作和查询:      1.ADD x y D:把D加到每个子序列{Ax... Ay}中.比如,执行"ADD 2 4 1",使{1,2,3,4,5}变成{1,3,4,5,5}      2.REVERS x y:反转子序列{Ax... Ay}.例如,执行"REVERSE 2 4 ",使{1,2,3,4,5}变成{1,4,3,2,5}      3.INSERT