Submission #1084774

#TimeUsernameProblemLanguageResultExecution timeMemory
1084774IzzyBosses (BOI16_bosses)C++14
Compilation error
0 ms0 KiB
#include <vector> #include <algorithm> #include <iostream> #include <map> using namespace std; int n; map<int, vector<int>> arr; int test(int start) { vector<bool> visited(n, false); vector<vector<int>> levels = {{start}}; int lvl = 0; int pos = 0; int salary = 0; visited[start] = true; while (lvl < levels.size()) { start = levels[lvl][pos]; auto it = arr.find(start); if (it != arr.end()) { for (int i: arr[start]) { if (!visited[i]) { visited[i] = true; if (int(levels.size()) > lvl + 1) { levels[lvl + 1].push_back(i); } else { levels.push_back({i}); } } } } pos++; if (pos == levels[lvl].size()) { salary += levels[lvl].size() * (lvl + 1); lvl++; pos = 0; } if (find(visited.begin(), visited.end(), false) != visited.end()) { return salary; } return 2147483646; } } int main() { int salary = 2147483646; cin >> n; for (int i = 0; i < n; i++) { int len; cin >> len; vector<int> temp; for (int j = 0; j < len; j++) { int x; cin >> x; x--; if (arr.find(x) == arr.end()) { arr[x] = {i}; } else { arr[x].push_back(i); } } } for (i = 0; i < n; i++) { if (arr.find(i) != arr.end()) { int temp = test(i); if (temp > salary) { salary = temp; } } } cout << salary; }

Compilation message (stderr)

bosses.cpp: In function 'int test(int)':
bosses.cpp:15:16: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::vector<int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   15 |     while (lvl < levels.size()) {
      |            ~~~~^~~~~~~~~~~~~~~
bosses.cpp:32:17: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   32 |         if (pos == levels[lvl].size()) {
      |             ~~~~^~~~~~~~~~~~~~~~~~~~~
bosses.cpp: In function 'int main()':
bosses.cpp:63:10: error: 'i' was not declared in this scope
   63 |     for (i = 0; i < n; i++) {
      |          ^
bosses.cpp: In function 'int test(int)':
bosses.cpp:9:34: warning: control reaches end of non-void function [-Wreturn-type]
    9 |     vector<bool> visited(n, false);
      |                                  ^