제출 #1268661

#제출 시각아이디문제언어결과실행 시간메모리
1268661nerrrmin열대 식물원 (Tropical Garden) (IOI11_garden)C++20
49 / 100
14 ms836 KiB
#include "garden.h" #include "gardenlib.h" #define pb push_back #include <bits/stdc++.h> using namespace std; const int maxn = 1e3 + 10; int n, m, p; vector < pair < int, int > > g[maxn]; int ans = 0, steps; void dfs(int beg, int from, int depth) { //cout << beg << " " << from << " w " << depth << endl; if(beg == p && depth == steps) { ans ++; return; } if(depth > steps)return; int madeit = 0; for (auto &[nb, index]: g[beg]) { if(nb == from)continue; if(madeit)break; madeit = 1; dfs(nb, beg, depth+1); } if(!madeit)dfs(from, beg, depth+1); } void count_routes(int N, int M, int P, int R[][2], int Q, int G[]) { n = N; m = M; p = P; for (int i = 0; i < m; ++ i) { int from = R[i][0]; int to = R[i][1]; g[from].pb({to, i}); g[to].pb({from, i}); } int i; for(i=0; i<Q; i++) { steps = G[i]; for (int i = 0; i < n; ++ i) { dfs(i, -1, 0); } answer(ans); } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...