Submission #1066203

#TimeUsernameProblemLanguageResultExecution timeMemory
1066203NemanjaSo2005Board Game (JOI24_boardgame)C++17
3 / 100
29 ms5140 KiB
#include<bits/stdc++.h>
#define ll long long
using namespace std;
const int maxn=5e4+5;
vector<int> graf[maxn];
ll N,M,K,poz[maxn],res[maxn];
string stop;
void solve1(){
   int poc=poz[1];
   for(int i=1;i<=N;i++)
      res[i]=1e18;
   queue<pair<int,int>> Q;
   Q.push({poc,0});
   while(Q.size()){
      auto x=Q.front();
      Q.pop();
      int tren=x.first;
      int d=x.second;
      if(res[tren]!=1e18)
         continue;
      res[tren]=d;
      for(int y:graf[tren])
         Q.push({y,d+1});
   }
   for(int i=1;i<=N;i++)
      cout<<res[i]<<"\n";
}
int main(){
   ios_base::sync_with_stdio(false);
   cin.tie(0);
   cin>>N>>M>>K;
   while(M--){
      int a,b;
      cin>>a>>b;
      graf[a].push_back(b);
      graf[b].push_back(a);
   }
   cin>>stop;
   stop="0"+stop+"0000";
   for(int i=0;i<stop.size();i++)
      stop[i]-='0';
   for(int i=1;i<=K;i++)
      cin>>poz[i];
   bool hasstop=false;
   for(int i=1;i<=N;i++)
      if(stop[i])
         hasstop=true;
   if(hasstop==false){
      solve1();
      return 0;
   }
}

Compilation message (stderr)

Main.cpp: In function 'int main()':
Main.cpp:40:17: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   40 |    for(int i=0;i<stop.size();i++)
      |                ~^~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...