社区讨论
bfs CE 悬一关
P1001A+B Problem参与者 5已保存回复 8
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 8 条
- 当前快照
- 1 份
- 快照标识符
- @lo1je963
- 此快照首次捕获于
- 2023/10/22 22:01 2 年前
- 此快照最后确认于
- 2023/11/02 23:14 2 年前
CPP
#include<bits/stdc++.h>
using namespace std;
int a[40010][40010], f[40010][40010];
int k=0,as=1000000005, sang=0;//sang是根号10^9,k用来暴力
int n,m,ans;
struct st {
int x,y;
};
queue<st>Q;
void bfs () {
while(!Q.empty()){
st q=Q.front();
if(a[q.x][q.y]==n+m){ans=a[q.x][q.y];break;}//找到了答案
if(q.x>sang||q.y>sang){Q.pop();continue;}//判断越界
if(f[q.x][q.y]==1){Q.pop();continue;}//剪枝
f[q.x][q.y]=1;
Q.push({q.x+1,q.y});
Q.push({q.x,q.y+1});
Q.pop();
}
}
int main () {
for (sang=0; sang*sang<as; sang++) {sang+=0;}
cout << sang;
for (int i = 0; i < sang; i++) {//<=测试平方
for (int j = 0; j < sang; j++) {
a[i][j]=k++;//<=录入暴力数据
}
}
cin >> n >> m;
Q.push({0,0});
bfs();
cout << ans << endl;
return 0;
}
//练一下bfs
悬一关
错误-》value of 00000002fb522b90 too large for field of 4 bytes at 000000000000010
悬一关
错误-》value of 00000002fb522b90 too large for field of 4 bytes at 000000000000010
0000000 2fb522b90的值对于000000000000010处的4字节字段太大
回复
共 8 条回复,欢迎继续交流。
正在加载回复...