社区讨论
80pts悬关(3个小号)
P5663[CSP-J 2019] 加工零件参与者 2已保存回复 1
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 1 条
- 当前快照
- 1 份
- 快照标识符
- @lo2kqzeu
- 此快照首次捕获于
- 2023/10/23 15:26 2 年前
- 此快照最后确认于
- 2023/10/23 15:26 2 年前
CPP
#include <cstdio>
#include <cstring>
#include <iostream>
#include <vector>
#include <queue>
using namespace std;
struct node {
int x;
int step;
node() {
}
node(int _x, int _step) {
x = _x;
step = _step;
}
};
vector < int > G[1005];
int vis[1005][1005];
queue < node > q;
void bfs(int s) {
vis[s][0] = true;
q.push(node(s,0));
while (!q.empty()) {
node now = q.front();
q.pop();
if(now.step > 1000){
continue;
}
for (int i = 0; i < G[now.x].size(); i++) {
int v = G[now.x][i];
if(!vis[v][now.step+1]){
vis[v][now.step+1] = 1;
q.push(node(v,now.step+1));
}
}
}
}
int main() {
int n, m, q, a, L;
scanf("%d%d%d", & n, & m, & q);
for (int i = 0; i < m; i++) {
int u, v;
scanf("%d%d", & u, & v);
G[u].push_back(v);
G[v].push_back(u);
}
bfs(1);
while (q--) {
scanf("%d%d", & a, & L);
if(vis[a][L]){
printf("Yes\n");
}else{
printf("No\n");
}
}
return 0;
}
回复
共 1 条回复,欢迎继续交流。
正在加载回复...