求助
查看原帖
求助
583593
AC_bee楼主2024/6/15 14:40
#include<bits/stdc++.h>
using namespace std;
long long n,m,c,ok,len;
char o[1001][1001];
void a1(long long x,long long y,long long t)
{
	ok=0;
	while(t--)
	{
		if(o[x][y]=='.') x--;
		else {
			ok=1;
			break;	
		}
	}
	if(ok==0) len++;
}
void a2(long long x,long long y,long long t)
{
	ok=0;
	while(t--)
	{
		if(o[x][y]=='.') x++;
		else {
			ok=1;
			break;	
		}
	}
	if(ok==0) len++;
}
void a3(long long x,long long y,long long t)
{
	ok=0;
	while(t--)
	{
		if(o[x][y]=='.') y++;
		else {
			ok=1;
			break;	
		}
	}
	if(ok==0) len++;
}
void a4(long long x,long long y,long long t)
{
	ok=0;
	while(t--)
	{
		if(o[x][y]=='.') y--;
		else 
		{
			ok=1;
			break;
		}
	}
	if(ok==0) len++;
}
int main(){
	cin>>n>>m>>c;
	for(long long i=1;i<=n;i++)
	{
		for(long long j=1;j<=m;j++)
		{
			cin>>o[i][j];
		}
	}
	for(long long i=1;i<=n;i++)
	{
		for(long long j=1;j<=m;j++)
		{
			if(o[i][j]=='.')
			{
				a1(i,j,c);
				a2(i,j,c);
				a3(i,j,c);
				a4(i,j,c);
			}
		}
	}
	cout<<len/2;
	return 0;
}

分数点

2024/6/15 14:40
加载中...