Submission #875450

#TimeUsernameProblemLanguageResultExecution timeMemory
875450ElenaBMTeams (CEOI11_tea)C++17
30 / 100
408 ms77516 KiB
#include <bits/stdc++.h> #define x first #define y second using namespace std; int main() { int n, aux; cin>> n; vector<int>a, s(1); vector<pair<int,int>>v(n); vector<vector<int>>teams(1); for (int i = 0; i < n; ++i){ int u; cin>> u; v[i] = {u, i+1}; } sort(v.begin(), v.end(), greater()); teams[0].push_back(v[0].y); int mx = v[0].x; s[0] = v[0].x -1; int cur = 0; for (int i = 1; i <n; ++i){ if (s[cur] > 0){ teams[cur].push_back(v[i].y); s[cur]--; } else{ if(v[i].x > n - i){ //mejor idea --> repartir a esta gente entre los grupos pequeños for (int u = i; u < n; ++u){ if ((int)teams[cur].size() < mx) teams[cur].push_back(v[u].y); else{ if(cur > 0) { cur--; u--; } else { mx++; cur = (int)teams.size()-1; u--; } } } break; } teams.push_back(vector<int>()); cur++; teams[cur].push_back(v[i].y); s.push_back(v[i].x-1); } } cout<< (int)teams.size() << '\n'; for (int i = 0; i < (int) teams.size(); ++i){ cout<< (int) teams[i].size()<< ' '; for (int j = 0; j < (int)teams[i].size(); ++j){ cout<< teams[i][j]<< ' '; } cout<< '\n'; } return 0; }

Compilation message (stderr)

tea.cpp: In function 'int main()':
tea.cpp:9:12: warning: unused variable 'aux' [-Wunused-variable]
    9 |     int n, aux;
      |            ^~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...