刷题遇到的坑
代码一小错,BUG找一年能体会到会计差2毛平账,找三天三夜的痛了
set.end()set<int> A;A.end()不是指向集合A最后一个元素的指针 !--A.end()才是!A.end()实际存放的是A.size()的值(所以set求元素个数时间复杂度是O(1)的)!
坑的来源:洛谷p1460 健康的荷斯坦奶牛 Healthy Holsteins找坑用时:起始:01-28 19:23:38 结束:01-28 22:34:38 共计3小时
#include<bits/stdc++.h>using namespace std;int wss[26];int sl_nutrition[16][26];int v,g;struct node{ set<int> sl; int nutrition[26]; node(){}; node(int kind){ this->sl.insert(kind); for(int i=1;i<=v;i++) this->nutrition[i]=sl_n ...
Hello World
Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub.
Quick StartCreate a new post$ hexo new "My New Post"
More info: Writing
Run server$ hexo server
More info: Server
Generate static files$ hexo generate
More info: Generating
Deploy to remote sites$ hexo deploy
More info: Deployment
BFS广度优先搜索
基础BFS广度优先算法(Breadth-First Search,BFS)是一种通过遍历进行搜索的方法,算法经过若干次循环,每次循环会访问所有能够访问的节点,为这些新节点打上标记,并且收集这些新节点所连接的所有节点信息,供下次循环来访问,直到访问到目标节点,算法结束。
数据结构地图数组 Map地图一般用数组来描述,地图的维数并不限制,其可以用来描述访问节点的方式 、是否存在障碍物 等。
//Map[5][9]010101010000010001011110110010000000000111110
迷宫地图(入口左上角,出口右下角)的访问方式是上下左右前进1格,0表示通路,1表示障碍物。
标记数组 vis标记数组可以避免算法访问已经访问过的节点 ,其一般和Map大小相同,区别是标记数组中1代表已访问过,0代表未访问过,当算法尝试访问一个节点时,会先判断标记数组是否为0,如果不为0,就不会访问该节点。
//vis[5][9]100000000000000000000000000000000000000000000
算法初始化时,迷宫入口处是已访问过的,标记为1,其他地方均为0。
节点结构 ...