# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
68920 | 2018-08-19T09:09:30 Z | Vahan | Bosses (BOI16_bosses) | C++17 | 2 ms | 996 KB |
#include<iostream> #include<vector> #include<deque> #include<cstdio> using namespace std; vector<int> g[20000]; deque<int> q; int n,pp,u[100000],pat=-1; int main() { cin>>n; for(int i=1;i<=n;i++) { int a; scanf("%d",&a); for(int j=1;j<=a;j++) { int b; scanf("%d",&b); if(i!=b) g[b].push_back(i); } } for(int i=1;i<=n;i++) { q.push_back(i); u[i]=1; int t=0; while(!q.empty()) { int v=q.front(); q.pop_front(); pp+=u[v]; t++; for(int j=0;j<g[v].size();j++) { int to=g[v][j]; if(u[to]==0) { u[to]=u[v]+1; q.push_back(to); } } } if(t==n) { if(pp<pat || pat==-1) pat=pp; } else q.clear(); for(int j=1;j<=n;j++) u[j]=0; } cout<<pat<<endl; return 0; }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 764 KB | Output is correct |
2 | Incorrect | 2 ms | 996 KB | Output isn't correct |
3 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 764 KB | Output is correct |
2 | Incorrect | 2 ms | 996 KB | Output isn't correct |
3 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 764 KB | Output is correct |
2 | Incorrect | 2 ms | 996 KB | Output isn't correct |
3 | Halted | 0 ms | 0 KB | - |