제출 #822934

#제출 시각아이디문제언어결과실행 시간메모리
822934mindiyak장난감 기차 (IOI17_train)C++14
0 / 100
2081 ms58520 KiB
#include "train.h" using namespace std; vector<vector<int>> paths(1e4,vector<int> ()); vector<int> chargers(1e4); // vector<int> cost(1e4,-1); int loop = 0; int n; void dfs(int pos,int start,int coins,int charging,vector<int> visited){ if(visited[pos]){ if(chargers[pos] == 1){ loop = 1; } return; } if(loop==1)return; if(chargers[pos] == 1){ charging = 1; coins = n; } if(pos==start and charging==1){loop = 1;} coins--; visited[pos]=1; if(coins <= 0)return; for(int a:paths[pos]){ dfs(a,start,coins,charging,visited); } } std::vector<int> who_wins(std::vector<int> a, std::vector<int> r, std::vector<int> u, std::vector<int> v) { n=a.size(); chargers = r; for (int i = 0; i < u.size(); i++){ paths[u[i]].push_back(v[i]); } vector<int> ans(n,-1); for (int i = 0; i < u.size(); i++){ loop = 0; dfs(i,i,n,chargers[i],vector<int>(n,0)); ans[i] = loop; } return ans; }

컴파일 시 표준 에러 (stderr) 메시지

train.cpp: In function 'std::vector<int> who_wins(std::vector<int>, std::vector<int>, std::vector<int>, std::vector<int>)':
train.cpp:35:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   35 |  for (int i = 0; i < u.size(); i++){
      |                  ~~^~~~~~~~~~
train.cpp:42:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   42 |  for (int i = 0; i < u.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...