Submission #973128

#TimeUsernameProblemLanguageResultExecution timeMemory
973128canadavid1Bosses (BOI16_bosses)C++14
100 / 100
482 ms788 KiB
#include <iostream> #include <vector> #include <algorithm> int main() { std::cin.tie(nullptr)->sync_with_stdio(false); int N; std::cin >> N; std::vector<std::vector<int>> coboss(N); for(int i = 0; i < N; i++) { int K; std::cin >> K; for(int j = 0; j < K; j++) { int l; std::cin >> l; coboss[l-1].push_back(i); } } int min = 1<<30; for(int head = 0; head < N; head++) { // bfs from head std::vector<int> curr = {head}; std::vector<bool> seen(N); seen[head] = 1; std::vector<int> next; int c = 0; for(int d = 1;curr.size();d++) { for(auto n: curr) { c += d; for(auto ne : coboss[n]) { if(!seen[ne]) {next.push_back(ne); seen[ne] = 1;} } } curr = std::move(next); next.clear(); } if (c < min && std::all_of(seen.begin(),seen.end(),[](auto x){return x;})) min = c; } std::cout << min << "\n"; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...