acwing 1097 池塘计数

简介: acwing 1097 池塘计数

活动 - AcWing

#include<iostream>
#include<algorithm>
#include<cstring>
#include<queue>
 
using namespace std ;
const int N = 1010 ;
int d[8][2] = {{-1,1},{0,1},{1,1},{1,0},{1,-1},{0,-1},{-1,-1},{-1,0}} ;
char g[N][N] ;
int n , m ;
int v[N][N] ;
struct edge{
  int x , y ;
  edge(int xx, int yy){
    x = xx , y = yy ;
  }
};
queue<edge> q ;
void bfs(int a , int b ){
  q.push(edge(a,b)) ;
  v[a][b] = 1 ;
  while(!q.empty()){
    edge now = q.front() ;
    q.pop() ;
    int x = now.x, y = now.y;
     
    for(int i = 0 ; i < 8 ; i ++){
      int tx = x + d[i][0] , ty = y + d[i][1] ;
      if(tx >= 0 && tx < n && ty >= 0 && ty < m ){
        if(g[tx][ty] == 'W'&&!v[tx][ty]){
          q.push(edge(tx,ty)) ;
          v[tx][ty] = 1 ;
        }
      }
      
    }
  }
}
int main(){
  cin >> n >> m ;
  for(int i = 0 ; i < n ;i ++) cin >> g[i] ;
  int ans = 0 ;
  for(int i = 0 ; i < n ;i ++){
    for(int j= 0 ; j < m ; j ++){
      if(!v[i][j] && g[i][j] == 'W'){
        ans ++ ; 
        bfs(i,j) ;
      }
    }
  }
  cout << ans << endl ;
}
目录
相关文章
|
编解码 Android开发 iOS开发
airserver软件激活码mac版
AirServer 可以方便的利用 AirPlay, Google Cast 以及 Miracast 等技术,将 iPhone, iPad, Mac, Android, Nexus, Pixel, Chromebook, 以及 PC 上面的内容投影到更大的屏幕上面,从而更好的促进协作。
7192 0
|
算法 NoSQL API
SpringCloud&Gateway网关限流
SpringCloud&Gateway网关限流
1062 7
|
前端开发 网络协议 Dubbo
超详细Netty入门,看这篇就够了!
本文主要讲述Netty框架的一些特性以及重要组件,希望看完之后能对Netty框架有一个比较直观的感受,希望能帮助读者快速入门Netty,减少一些弯路。
92943 32
超详细Netty入门,看这篇就够了!
|
机器学习/深度学习 自然语言处理 算法
7.1.3、使用飞桨实现基于LSTM的情感分析模型
该文章介绍了如何使用飞桨(PaddlePaddle)实现基于长短时记忆网络(LSTM)的情感分析模型,包括数据处理、网络定义、模型训练、评估和预测的详细步骤。
|
Java Windows Spring
Spring Boot 3.x 全新的热部署配置方式(IntelliJ IDEA 2023.1)
Spring Boot 3.x 全新的热部署配置方式(IntelliJ IDEA 2023.1)
344 1
|
Java 应用服务中间件 Linux
终于有人把怎么在IDEA中使用Java热部署插件JRebel讲清楚了...
终于有人把怎么在IDEA中使用Java热部署插件JRebel讲清楚了...
3064 0
|
监控 Java 应用服务中间件
Sentinel整合Spring Cloud Gateway、Zuul详解
Sentinel整合Spring Cloud Gateway、Zuul详解
736 0
|
存储 缓存 监控
Spring Cloud 学习笔记06-02----用Hystrix来限流以及进行服务隔离
上一篇我们介绍了Spring Cloud 学习笔记06----断路器(Hystrix)(Finchley版本)。那一篇主要是介绍Hystrix用来做熔断处理。这一篇我们将重点介绍一下用Hystrix来做限流器以及服务隔离器。
458 0
Spring Cloud 学习笔记06-02----用Hystrix来限流以及进行服务隔离
|
Java API Maven
SpringCloud Gateway - 集成 Sentinel 流量限流、熔断
SpringCloud Gateway - 集成 Sentinel 流量限流、熔断
6166 1
|
缓存 安全 Java
java老鸟教你如何高效优雅的进行时间格式化
java老鸟教你如何高效优雅的进行时间格式化
715 0