| # | Time | Username | Problem | Language | Result | Execution time | Memory |
|---|---|---|---|---|---|---|---|
| 1302338 | minhhq | Towers (NOI22_towers) | C++20 | 2097 ms | 31628 KiB |
#include<bits/stdc++.h>
#define ll long long
#define all(a) (a).begin(),(a).end()
#define bg begin()
#define en end()
#define pb push_back
#define _p pop_front
#define p_ pop_back
#define fi first
#define se second
#define ass assign
#define sz size()
#define el '\n'
#define pii pair<int,int>
#define pll pair<ll,ll>
using namespace std;
const int Mod=1e9+7;
const int lmt=1e6+7;
void file(){
#define TASK "CROSS"
if(fopen(TASK".INP","r"))
freopen(TASK".INP","r",stdin),
freopen(TASK".OUT","w",stdout);
}
int n,m;
vector<vector<int>>adj;
vector<bool>vst;
vector<int>dist,d;
void init(){
cin>>n>>m;
vst.ass(n+1,0);
adj.ass(n+1,{});
dist.ass(n+1,0);
d.ass(n+1,0);
for(int i=1;i<=m;i++){
int u,v;
cin>>u>>v;
adj[u].pb(v);
adj[v].pb(u);
}
for(int i=1;i<=n;i++)
cin>>d[i];
}
void bfs(int cur){
fill(all(vst),0);
fill(all(dist),INT_MAX);
dist[cur]=0;
queue<int>q;
q.push(cur);
while(q.sz){
int u=q.front();
q.pop();
vst[u]=1;
for(int v:adj[u]){
if(vst[v]) continue;
q.push(v);
dist[v]=min(dist[v],dist[u]+1);
}
}
}
void solve(){
vector<int>res;
for(int i=1;i<=n;i++){
bfs(i);
bool check=1;
for(int j=1;j<=n;j++){
if(d[j]==-1) continue;
if(dist[j]!=d[j]){
check=0;
break;
}
}
if(check) res.pb(i);
}
sort(all(res));
cout<<res.sz<<el;
for(int x:res) cout<<x<<' ';
}
int main(){
ios_base::sync_with_stdio(0);
cin.tie(0),cout.tie(0);
file();
init();
solve();
}
/*
*/
Compilation message (stderr)
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
