【链接】 我是链接,点我呀:)

【题意】

在这里输入题意

【题解】

发现根本不用存节点信息。
遇到了叶子节点且为黑色,就直接覆盖矩阵就好(因为是并集);

【代码】

  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. const int N = (1 << 5) + 10;
  4. string s;
  5. int pos, bo[N][N];
  6. void fugai(int x1, int y1, int x2, int y2) {
  7. for (int i = x1; i <= x2; i++)
  8. for (int j = y1; j <= y2; j++)
  9. bo[i][j] = 1;
  10. }
  11. void dfs(int x1, int y1, int x2, int y2) {
  12. if (s[pos] == 'f' || s[pos] == 'e') {
  13. if (s[pos] == 'f') {
  14. fugai(x1, y1, x2, y2);
  15. }
  16. return;
  17. }
  18. int len = (x2 - x1 + 1) / 2;
  19. pos++;
  20. dfs(x1, y1 + len, x1 + len - 1, y1 + len + len - 1);
  21. pos++;
  22. dfs(x1, y1, x1 + len - 1, y1 + len - 1);
  23. pos++;
  24. dfs(x1 + len, y1, x1 + len + len - 1, y1 + len - 1);
  25. pos++;
  26. dfs(x1 + len, y1 + len, x1 + len + len - 1, y1 + len + len - 1);
  27. }
  28. int main() {
  29. //freopen("rush.txt", "r", stdin);
  30. int T;
  31. scanf("%d", &T);
  32. while (T--) {
  33. memset(bo, 0, sizeof bo);
  34. cin >> s;
  35. pos = 0;
  36. dfs(1, 1, 32, 32);
  37. cin >> s;
  38. pos = 0;
  39. dfs(1, 1, 32, 32);
  40. int cnt = 0;
  41. for (int i = 1; i <= 32; i++)
  42. for (int j = 1; j <= 32; j++)
  43. cnt += bo[i][j];
  44. printf("There are %d black pixels.\n", cnt);
  45. }
  46. return 0;
  47. }

【例题 6-11 UVA-297】Quadtrees的更多相关文章

  1. UVa 297 Quadtrees(树的递归)

    Quadtrees 四分树就是一颗一个结点只有4个儿子或者没有儿子的树 [题目链接]UVa 297 Quadtrees [题目类型]树的递归 &题意: 一个图片,像素是32*32,给你两个先序 ...

  2. UVA.297 Quadtrees (四分树 DFS)

    UVA.297 Quadtrees (四分树 DFS) 题意分析 将一个正方形像素分成4个小的正方形,接着根据字符序列来判断是否继续分成小的正方形表示像素块.字符表示规则是: p表示这个像素块继续分解 ...

  3. uva 297 quadtrees——yhx

    Quadtrees  A quadtree is a representation format used to encode images. The fundamental idea behind ...

  4. UVA 297 Quadtrees(四叉树建树、合并与遍历)

    <span style="font-size: 18pt; font-family: Arial, Helvetica, sans-serif; background-color: r ...

  5. UVa 297 Quadtrees -SilverN

    A quadtree is a representation format used to encode images. The fundamental idea behind the quadtre ...

  6. UVa 297 - Quadtrees

    题目:利用四叉树处理图片,给你两张黑白图片的四叉树,问两张图片叠加后黑色的面积. 分析:搜索.数据结构.把图片分成1024块1*1的小正方形,建立一位数组记录对应小正方形的颜色. 利用递归根据字符串, ...

  7. UVA - 297 Quadtrees (四分树)

    题意:求两棵四分树合并之后黑色像素的个数. 分析:边建树边统计. #include<cstdio> #include<cstring> #include<cstdlib& ...

  8. 297 - Quadtrees (UVa)

    Quadtrees A quadtree is a representation format used to encode images. The fundamental idea behind t ...

  9. UVa 297 (四分树 递归) Quadtrees

    题意: 有一个32×32像素的黑白图片,用四分树来表示.树的四个节点从左到右分别对应右上.左上.左下.右下的四个小正方区域.然后用递归的形式给出一个字符串代表一个图像,f(full)代表该节点是黑色的 ...

  10. 【紫书】Quadtrees UVA - 297 四叉树涂色

    题意:前序遍历给出两个像素方块.求两个方块叠加后有几个黑色格子. 题解:每次读进来一个方块,就在二维数组上涂色.每次把白色涂黑就cnt++: 具体递归方法是以右上角坐标与边长为参数,每次通过几何规律往 ...

随机推荐

  1. Qt Quick 之 PathView 具体解释

    PathView ,顾名思义,沿着特定的路径显示 Model 内的数据. Model 能够是 QML 内建的 ListModel . XmlListModel ,也能够是在 C++ 中实现的 QAbs ...

  2. 利用css去除input按钮上的文字的几种方法

    相信很多时候input上的文字困扰着web前端开发者,必须要通过修改html代码中的value值才能清空按钮上的文字,但很多人不愿意去动html代码,一方面麻烦,另外主要的原因还在于保留文字对seo有 ...

  3. jquery实现瀑布流效果

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  4. ajax的使用(一)

        ajax向服务器异步发送和接受数据,然后用JavaScript解析.Ajax核心规范的名称继承于你用来建立和发送请求的JavaScript对象:XMLHttpRequest.这个规范有两个等级 ...

  5. 【DRF路由】

    在urls.py文件中按照如下步骤写,即可正确使用DRF的内置路由. from .views import BookModel # 1. 导入我们的视图 from rest_framework.rou ...

  6. 韦东山ARM裸机笔记(1)

    1.一个嵌入式Linux系统的软件组成:单片机大全Bootloader-->Linux驱动-->Linux APP-->Linux GUI(Android/QT) 2.驱动程序=软件 ...

  7. Android 使用开源库载入网络图片

    Android 使用开源库载入网络图片,使用开源库载入图片.单击listview弹出popupwindow弹出框详情查看: Android 单击listview弹出popupwindow弹出框 ,里面 ...

  8. tcpdump重要笔记

    无关痛痒的參数就不写了.仅仅说一些我觉得值得注意的. 1 tcpdump參数 -s 最早在公司旧机器上截包时发现总是不完整,于是知道了这个參数,之后就一直用-s0了.近期一次在家里,忘记输入-s发现包 ...

  9. ubuntu-虚拟机分辨率设定

    前两天下载的虚拟机,一直调节不好分辨率,就是说,全屏的时候,虚拟机要么是不能充满屏幕,要么就是在屏幕充满的时候,会出现显示不全,需要滚动条,给人的体验非常的不好.自己调节了好长时间都没有刚好合适的尺寸 ...

  10. Django快速搭建博客

    准备工作: 1.Python 2.Django 3.Git 安装Python: 官网下载 安装Django: #安装最新版本的Django $ pip install django #或者指定安装版本 ...