AcWing池塘计数】的更多相关文章

这个题让我们求连通块得数数量,我考虑用flood fill算法. 也就是枚举这个地图每一个点,假如符合要求就bfs与这个点联通的点,并打上标记.结束后接着枚举没有被标记并且符号要求的点... 1.==和=千万别写错 2.队列不要忘记head++; 3.tail++一遍就可以了 代码 #include<bits/stdc++.h> #define maxn 1010 using namespace std; char mp[maxn][maxn]; int n,m; struct node{ i…
搜索进阶 22.4.14 (PS:还有 字串变换 A*两题 生日蛋糕 回转游戏 没做) 感觉暂时用不上 BFS 1. Flood Fill 在线性时间复杂度内,找到某个点所在的连通块 思路 统计连通块个数(多个连通块):逮着一个就开搜 连通性问题(能走多远,迷宫性问题,一个连通块):起点开始搜 池塘计数 普通八连通 城堡问题 考察读入理解 int dx[] = {0, -1, 0, 1}, dy[] = {-1, 0, 1, 0}; //按照西北东南的顺序 int bfs (int x, int…
一.Flood Fill(连通块问题) 0.简介 Flood Fill(洪水覆盖) 可以在线性的时间复杂内,找到某个点所在的连通块! 注:基于宽搜的思想,深搜也可以做但可能会爆栈 flood fill算法DFS与BFS: ​ DFS:无法求解最短路问题:可能会爆栈(递归层数很深时):代码简介.当数据范围较小时可以使用 ​ BFS:可以求解最短路:不存在爆栈情况:需要自己手写队列 1.池塘计数 农夫约翰有一片 N∗MN∗M 的矩形土地. 最近,由于降雨的原因,部分土地被水淹没了. 现在用一个字符矩…
题目:https://www.acwing.com/problem/content/232/ #include<bits/stdc++.h> #define ll long long #define mod 1000000007 using namespace std; ; ll dp[maxn],inv[maxn],fac[maxn],inv_fac[maxn]; void init() { inv[]=inv[]=inv_fac[]=fac[]=; dp[]=;dp[]=; ; i<…
给出一个n个顶m 条边的无向无权图,顶点编号为 1 到 n.N. 问从顶点 1开始,到其他每个点的最短路有几条. #include<bits/stdc++.h> #define N 1000000 #define MOD 100003 using namespace std; int head[N],net[N],to[N];; int a[N],d[N],cnt[N]; int n,m,cut; priority_queue<pair<int ,int > > dl;…
Description 为了让奶牛们娱乐和锻炼,农夫约翰建造了一个美丽的池塘.这个长方形的池子被分成了M行N列个方格(1≤M,N≤30).一些格子是坚固得令人惊讶的莲花,还有一些格子是岩石,其余的只是美丽.纯净.湛蓝的水. 贝西正在练习芭蕾舞,她站在一朵莲花上,想跳到另一朵莲花上去,她只能从一朵莲花跳到另一朵莲花上,既不能跳到水里,也不能跳到岩石上. 贝西的舞步很像象棋中的马步:每次总是先横向移动一格,再纵向移动两格,或先纵向移动两格,再横向移动一格.最多时,贝西会有八个移动方向可供选择. 约翰…
P1606 [USACO07FEB]荷叶塘Lilypad Pond 题目描述 FJ has installed a beautiful pond for his cows' aesthetic enjoyment and exercise. The rectangular pond has been partitioned into square cells of M rows and N columns (1 ≤ M ≤ 30; 1 ≤ N ≤ 30). Some of the cells h…
地址 https://www.acwing.com/problem/content/description/850/ 题目描述给定一个n个点m条边的有向图,图中可能存在重边和自环. 请输出任意一个该有向图的拓扑序列,如果拓扑序列不存在,则输出-1. 若一个由图中所有点构成的序列A满足:对于图中的每条边(x, y),x在A中都出现在y之前,则称A是该图的一个拓扑序列. 输入格式第一行包含两个整数n和m 接下来m行,每行包含两个整数x和y,表示点x和点y之间存在一条有向边(x, y). 输出格式共一…
地址 https://www.acwing.com/problem/content/66/ https://www.acwing.com/problem/content/67/ https://www.acwing.com/problem/content/submission/68/ 三道题都是二叉树相关 使用递归遍历即可解决 70. 二叉搜索树的第k个结点 给定一棵二叉搜索树,请找出其中的第k小的结点. 你可以假设树和k都存在,并且1≤k≤树的总结点数. 输入 输入:root = [, , ,…
习题地址 https://www.acwing.com/solution/acwing/content/2970/ 题目描述地上有一个 m 行和 n 列的方格,横纵坐标范围分别是 0∼m−1 和 0∼n−1. 一个机器人从坐标0,0的格子开始移动,每一次只能向左,右,上,下四个方向移动一格. 但是不能进入行坐标和列坐标的数位之和大于 k 的格子. 请问该机器人能够达到多少个格子? 样例 输入:k=, m=, n= 输出: 输入:k=, m=, n= 输出: 解释:当k为18时,机器人能够进入方格…