zoukankan      html  css  js  c++  java
  • L1141(bfs思想)

    一,看

    1,整个方格图其实可以看做是一些不连通的图。

    当然图内部必然是联通的。

    2,遍历的技巧没什么。

    方格图入队的技巧。。额,是这样的

    int gtid(int x,int y)

    { return x*m+y-1;}

    *这个函数可以把二维点对压成一维。

    *解压时只需要x=id/n,y=id%n+1;

    原理是》?

    噢。。首先你是在bfs,得用队列。。

    所以有这么一出。其实你也可以用结构体,但是它说结构体

    不够优美。。

    函数的全称是get_id.

    3,还有骚的操作

    (x-1)*m+y-1;

    听说这样一个3×3的表格就是从0,1,2,3,4,5,6,7,8

    这样,挺秀的。

    4,它的代码结构化挺好的,看起来挺高级的

    ①,入队,标示区域

    ②,队列出元素,检查是否在地图内

    ③,这个判断的话,我觉得一个和标记有关,一个和区域有关

    染色深入递归

    二,题解

    1,这个标示队列的使用方法。。queue<pair<int ,int>>q;

    还是听那人的比较好,全用手写~2

    2,这也太难看了把。

    3,重点看的是答案从何而来。

    4,bfs只是一种思想,并非必须这样。

    三,写题

    1,bfs只是一种枚举的思想。而非很固定的一个东西。

    四,完美写一遍

    1,必须每次都得不看得写一遍。

    2,在于标记函数,标记是否走过

    颜色函数,每几个点是否在一个联通图中,

  • 相关阅读:
    IT教育课程考评系统开发-07
    2020091201-1
    ip
    输入框枚举
    语言枚举
    《岁月神偷》弹唱和弦吉他谱_六线谱
    string 转化成 string数组
    获取类的字段值
    获取类的字段
    最全的省份递归
  • 原文地址:https://www.cnblogs.com/beiyueya/p/12005632.html
Copyright © 2011-2022 走看看