3번 왜 틀렸는지좀 알려줘ㅠㅠ
a,b들어왔을때 b->a 경로 검색해서 없으면 a->b넣어도 되니까 0출력하고 있으면 1출력하면 되는거 아니야??
제출 10번 채우고 포기했어
#include <iostream>
#include <vector>
#include <set>
#include <queue>
#include <string>
using namespace std;

string Answer = "";
vector<int> v[502];

bool find_path(int start, int end){
  int x=start, i;
  set<int> s;
  queue<int> q;
  q.push(x);
  s.insert(x);
  while(!q.empty()){
    x=q.front();
    q.pop();
    for(i=0;i<v[x].size();i++){
      if(v[x][i] == end) return true;
      else {
        if(s.find(v[x][i]) == s.end()){
          s.insert(v[x][i]);
          q.push(v[x][i]);
        }
      }
    }
  }
  return false;
}

int main(int argc, char** argv)
{
  int T, test_case;

  cin >> T;
  for(test_case = 0; test_case < T; test_case++)
  {
    Answer = "";
    int i, n, m, k, a, b;
    cin >> n >> m >> k;
    for(i=1; i<m+1; i++){
      cin>>a>>b;
      v[a].push_back(b); //v[a]에 a랑 연결된거 저장
    }
    for(i=1;i<k+1;i++){
      cin>>a>>b;
      if(find_path(b,a)==false) { //b->a 연결되있는지 찾음
        Answer += "0";
        v[a].push_back(b);
      }
      else {
        Answer += "1";
       v[b].push_back(a);
      }
    }
그다음 답 출력