传送门  Problem - 1600J - Codeforces

题目  

题意

给定n行m列, 求每个连通块由多少格子组成,并将格子数从大到小排序输出

对于每个格子都有一个数(0~15),将其转化为二进制(四位数),比如1010

表示北为1,不可通东为0,可通南为1,不可通西为0,可通。

即 1表示墙,不可通,四位数字依次表示为北东南西

【注意:比如样例9到14去,只需判断9东边是否可通即可,14不用管】

题解

差不多和dfs的板子一样~

AC代码

#include <iostream>
#include <algorithm> using namespace std; const int N = 1e3+10; int n, m, res[N*N], idx = -1, step;
int dx[4] = {0,1,0,-1}, dy[4] = {-1,0,1,0};//西南东北
bool book[N][N];
int a[N][N]; void dfs(int x, int y)
{
bool flag = 0;
int xx = a[x][y];
for(int i = 0; i < 4; i ++)
{
if((xx>>i)&1==1) continue; int tx = x+dx[i];
int ty = y+dy[i];
if(tx<0||tx>=n||ty<0||ty>=m) continue; if(!book[tx][ty])
{
flag = 1;
book[tx][ty] = 1;
step++;
dfs(tx, ty);
}
}
if(!flag) return; }
int main(){ idx = -1;
cin >> n >> m;
for(int i = 0; i < n; i ++)
for(int j = 0; j < m; j ++)
cin >> a[i][j]; for(int i = 0; i < n; i ++)
for(int j = 0; j < m; j ++)
if(!book[i][j])
{
step=1;
book[i][j] = 1;
dfs(i, j);
res[++idx] = step;
} sort(res, res+idx+1);
for(int i = idx; i >= 0; i --)cout << res[i]<< ' ';
puts(""); return 0;
}

总结

不是很难,但是代码改了很久,有理解题意的问题,还有板子细节部分忘了

1. 比如样例9到14去,只需判断9东边是否可通即可,14不用管

2. n和m搞反了

3. 主函数中,每次进入dfs,初始(i,j)未标记

【简单dfs】Bubble Cup 14 - Finals Online Mirror (Unrated, ICPC Rules, Teams Preferred, Div. 2), problem: (J) Robot Factory,的更多相关文章

  1. Bubble Cup 12 - Finals Online Mirror, unrated, Div. 1

    Bubble Cup 12 - Finals Online Mirror, unrated, Div. 1 C. Jumping Transformers 我会状压 DP! 用 \(dp[x][y][ ...

  2. Bubble Cup 12 - Finals [Online Mirror, unrated, Div. 1] E. Product Tuples

    题意略,题解生成函数练习题,1+(q-ai)x卷积即可,线段树优化(类似分治思想) //#pragma GCC optimize(2) //#pragma GCC optimize(3) //#pra ...

  3. Bubble Cup 13 - Finals [Online Mirror, unrated, Div. 1] K. Lonely Numbers (数学)

    题意:定义两个数\(a,b\)是朋友,如果:\(gcd(a,b)\),\(\frac{a}{gcd(a,b)}\),\(\frac{b}{gcd(a,b)}\)能构成三角形,现在给你一个正整数\(n\ ...

  4. Bubble Cup 11 - Finals [Online Mirror, Div. 1]题解 【待补】

    Bubble Cup 11 - Finals [Online Mirror, Div. 1] 一场很好玩的题啊! I. Palindrome Pairs 枚举哪种字符出现奇数次. G. AI robo ...

  5. 2019-2020 ICPC, Asia Jakarta Regional Contest (Online Mirror, ICPC Rules, Teams Preferred)

    2019-2020 ICPC, Asia Jakarta Regional Contest (Online Mirror, ICPC Rules, Teams Preferred) easy: ACE ...

  6. Codeforces Bubble Cup 8 - Finals [Online Mirror] B. Bribes lca

    题目链接: http://codeforces.com/contest/575/problem/B 题解: 把链u,v拆成u,lca(u,v)和v,lca(u,v)(v,lca(u,v)是倒过来的). ...

  7. Codeforces Bubble Cup 8 - Finals [Online Mirror]H. Bots 数学

    H. Bots Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/575/problem/H Desc ...

  8. Codeforces Bubble Cup 8 - Finals [Online Mirror] D. Tablecity 数学题

    D. Tablecity Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/575/problem/D ...

  9. Codeforces Bubble Cup 8 - Finals [Online Mirror] F. Bulbo DP

    F. Bulbo Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/575/problem/F Des ...

随机推荐

  1. OpenCv基础_四

    Harris角点检测 理解 内部点:蓝框所示,无论滑动窗口水平滑动还是竖直滑动,框内像素值都不会发生大的变化 边界点:黑框所示,滑动窗口沿着某一个方向滑动框内像素点不会发生大的改变,但是沿着另一个方向 ...

  2. Linux下使用Google Authenticator配置SSH登录动态验证码

    1.一般ssh登录服务器,只需要输入账号和密码.2.本教程的目的:在账号和密码之间再增加一个验证码,只有输入正确的验证码之后,再输入密码才能登录.这样就增强了ssh登录的安全性.3.账号.验证码.密码 ...

  3. XSS 32个触发事件

    标签: 1.onmouseenter:当鼠标进入选区执行代码 <div style="background-color:red" onmouseenter="ale ...

  4. ASP.NET Core 6框架揭秘实例演示[28]:自定义一个服务器

    作为ASP.NET Core请求处理管道的"龙头"的服务器负责监听和接收请求并最终完成对请求的响应.它将原始的请求上下文描述为相应的特性(Feature),并以此将HttpCont ...

  5. 使用VS Code编译Marlin固件

    参考:https://marlinfw.org/docs/basics/install_platformio_vscode.html 前言 在阅读本文之前,您应该已经阅读了使用 PlatformIO ...

  6. FOC中的电流采样

    电流采样是FOC的基础,具体有电流传感器采样.电阻采样,电阻采样以其简单低成本的应用广泛使用. 电阻法采样有单电阻采样.双电阻采样.三电阻采样. 一. 单电阻采样 单电阻采用分时采样,在一个PWM周期 ...

  7. 网络编程 --安装wkhtmltopdf出现中文乱码的情况

    1 首先下载安装包 2安装依赖文件apt-get install libxfont1 xfonts-encodings xfonts-utils xfonts-base xfonts-75dpi su ...

  8. Oracle 数据库应用开发 30 忌

    原创 LaoYuanPython CSDN 今天 作者 | LaoYuanPython       责编 | 欧阳姝黎出品 | CSDN原力计划 引言 笔者及所在团队从 2000 年开始的 CRM 等 ...

  9. mq 的缺点?

    (1)系统可用性降低 系统引入的外部依赖越多,越容易挂掉,本来你就是 A 系统调用 BCD 三个系统的接口就好了,人 ABCD 四个系统好好的,没啥问题,你偏加个 MQ 进来,万一MQ 挂了咋整?MQ ...

  10. Spring源码分析笔记--事务管理

    核心类 InfrastructureAdvisorAutoProxyCreator 本质是一个后置处理器,和AOP的后置处理器类似,但比AOP的使用级别低.当开启AOP代理模式后,优先使用AOP的后置 ...