哎呀呀呀呀呀,queue没学好就是不行啊,每次都把队列想象成头进尾出,然后就尴尬了。
queue前期最大的用处就是BFS了,哎,每次BFS都去访问queue.back()怎么能对啊,最重要的还不是这个,是我每写一次就忘一次,这BFS还怎么写啊所以今天就吧这个错误记录到博客上,以免以后再犯。
这题我做了好久才发现这个错误,尴尬。
题目网址:微软大楼设计方案(戳我)
错误的代码:
#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<algorithm>
#include<queue>
#include<cstring>
int gox[4] = {
0,1,0,-1},goy[4] = {
1,0,-1,0},num[1001][1001],f[1001][1001],indexx[1001],indexy[1001],n,m,k;
const int inf = 0x3f3f3f3f;
int get_ans(int x1,int y1,int x2,int y2)
{
std::queue<int> x;
std::queue<int> y;
std::queue<int> deep;
x.push(x1);y.push(y1);deep.push