绿纹龙的森林游记——UPC

简介: 题目描述暑假来了,绿纹龙很高兴。于是飘飘乎就来到了森林一日游。可是他却看到了很不和谐的一幕,一群猎人在森林里围捕小动物。森林可以看做是一个10*10的方格,如下图所示,1表示猎人,0表示小动物。

题目描述

暑假来了,绿纹龙很高兴。于是飘飘乎就来到了森林一日游。

可是他却看到了很不和谐的一幕,一群猎人在森林里围捕小动物。

森林可以看做是一个10*10的方格,如下图所示,1表示猎人,0表示小动物。


微信图片_20220529171554.png

已知猎人保持不动,而小动物可以往上下左右任意方向逃脱(当然不能撞上猎人)。小动物可以逃出森林。但上图背景色被标红的那部分小动物将永远无法逃脱猎人的魔爪。

输入

一个10*10的 矩阵,描述森林中猎人和小动物分布的情况。保证每个点要么为猎人,要么为小动物。

输出

一个整数,表示不能逃脱猎人魔爪的小动物数量。


样例输入 Copy


0 0 0 0 0 0 0 0 0 0
0 0 0 0 1 1 1 0 0 0
0 0 0 0 1 0 0 1 0 0
0 0 0 0 0 1 0 0 1 0
0 0 1 0 0 0 1 0 1 0
0 1 0 1 0 1 0 0 1 0
0 1 0 0 1 1 0 1 1 0
0 0 1 0 0 0 0 1 0 0
0 0 0 1 1 1 1 1 0 0
0 0 0 0 0 0 0 0 0 0


样例输出 Copy


15


写dfs进行搜索

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
#define HEAP(...) priority_queue<__VA_ARGS__ >
#define heap(...) priority_queue<__VA_ARGS__,vector<__VA_ARGS__ >,greater<__VA_ARGS__ > >
template<class T> inline T min(T &x,const T &y){return x>y?y:x;}
template<class T> inline T max(T &x,const T &y){return x<y?y:x;}
ll read(){ll c = getchar(),Nig = 1,x = 0;while(!isdigit(c) && c!='-')c = getchar();
if(c == '-')Nig = -1,c = getchar();
while(isdigit(c))x = ((x<<1) + (x<<3)) + (c^'0'),c = getchar();
return Nig*x;}
#define read read()
const ll inf = 1e15;
const int maxn = 1e6 + 7;
const int mod = 1e9 + 7;
ll num[maxn];
ll searc[100][100];
void dfs(int a,int b){
    if(a>=1&&a<=10&&b>=1&&b<=10&&!searc[a][b]){
        searc[a][b]=1;
        dfs(a+1,b);dfs(a-1,b);
        dfs(a,b+1);dfs(a,b-1);
    }
    return ;
}
int main(){
    for(int i=1;i<=10;i++)
        for(int j=1;j<=10;j++)
            searc[i][j]=read;
    for(int i=1;i<=10;i++){
        dfs(1,i);dfs(i,1);dfs(10,i);dfs(i,10);
    }
    ll ans=0;
    for(int i=1;i<=10;i++)
        for(int j=1;j<=10;j++)
            if(!searc[i][j])
                ans++;
    cout<<ans<<endl;
    return 0;
}


目录
相关文章
|
存储 虚拟化 Docker
Windows11 Docker镜像存储路径更改(非C盘路径)
本文是博主学习Docker的记录,对于C盘空间有限的同学,希望对大家有所帮助。
3594 0
Windows11 Docker镜像存储路径更改(非C盘路径)
|
小程序 开发者 安全
福利!支付宝小程序开发必备的7款开源DEMO
相比于APP,小程序已经大大降低了开发者们的学习和开发的门槛。而如何进一步提高小程序开发者的学习和开发效率,一直是支付宝小程序团队非常重视的课题。对于开发者而言, 文档可以提供基础的引导,而针对性的、基于常见场景的DEMO则更为直观清晰易懂,可以大大节约上手的成本。
7963 0
福利!支付宝小程序开发必备的7款开源DEMO
|
数据采集 机器学习/深度学习 存储
基于多项式朴素贝叶斯的中文垃圾邮件识别
基于多项式朴素贝叶斯的中文垃圾邮件识别
|
测试技术 API 数据库
了解1688API接口测试 | 1688 API接口测试指南
在当今电子商务快速发展的时代,1688作为中国最大的B2B电子商务平台之一,为商家提供了丰富的商品资源和交易平台。为了方便商家进行商品管理和交易操作,1688提供了一系列的API接口,通过这些接口,商家可以方便地获取商品信息、发布商品、管理订单等。然而,在使用这些API接口之前,我们需要进行接口测试,以确保接口的正常运行和数据的准确性。本文将详细介绍1688API接口测试的重要性和方法,并提供相关的代码示例。
|
SQL 关系型数据库 分布式数据库
如何使用列索引一键加速慢查询?PolarDB AutoIndex大揭秘
如何使用列索引一键加速慢查询?PolarDB AutoIndex大揭秘
209 0
|
Ubuntu 安全 Linux
Linux的安装过程
Linux的安装过程
514 6
|
存储 自然语言处理 JavaScript
vben框架是什么
vben框架是什么
3095 0
|
机器学习/深度学习 存储 人工智能
登上联合国教科文组织讲台!阿里云分享大模型+教育数字化经验
登上联合国教科文组织讲台!阿里云分享大模型+教育数字化经验
488 0
|
存储 安全 网络安全
Charles证书安装windows11抓包 Https协议
Https协议抓包,需要Charles 的CA证书,CA证书安装简介,及证书手动导入“受信任的根证书颁发机构”存储区。
1361 0
Charles证书安装windows11抓包 Https协议
|
存储 缓存 算法
Go --- GCache缓存官方例子
Go --- GCache缓存官方例子

热门文章

最新文章