#include <iostream> #include <vector> #include <algorithm> using namespace std; int main() { size_t liczbaUczestnikow = 0; size_t minimalnaLiczbaKoszulek = 0; size_t liczbaPunktow = 0; vector<short> punkty; cin >> liczbaUczestnikow >> minimalnaLiczbaKoszulek; for (size_t i = 0; i < liczbaUczestnikow; ++i) { cin >> liczbaPunktow; punkty.push_back(liczbaPunktow); } sort(punkty.begin(), punkty.end(), greater<>()); size_t przyznaneKoszulki = 0; for (size_t i = 0; i < punkty.size(); ++i) { //cout << wynik << endl; przyznaneKoszulki++; if (przyznaneKoszulki >= minimalnaLiczbaKoszulek) { if ( przyznaneKoszulki != punkty.size()) { for (size_t j = i + 1; punkty[i] == punkty[j]; ++j) { przyznaneKoszulki++; } break; } else { break; } } } cout << przyznaneKoszulki; return 0; }
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 | #include <iostream> #include <vector> #include <algorithm> using namespace std; int main() { size_t liczbaUczestnikow = 0; size_t minimalnaLiczbaKoszulek = 0; size_t liczbaPunktow = 0; vector<short> punkty; cin >> liczbaUczestnikow >> minimalnaLiczbaKoszulek; for (size_t i = 0; i < liczbaUczestnikow; ++i) { cin >> liczbaPunktow; punkty.push_back(liczbaPunktow); } sort(punkty.begin(), punkty.end(), greater<>()); size_t przyznaneKoszulki = 0; for (size_t i = 0; i < punkty.size(); ++i) { //cout << wynik << endl; przyznaneKoszulki++; if (przyznaneKoszulki >= minimalnaLiczbaKoszulek) { if ( przyznaneKoszulki != punkty.size()) { for (size_t j = i + 1; punkty[i] == punkty[j]; ++j) { przyznaneKoszulki++; } break; } else { break; } } } cout << przyznaneKoszulki; return 0; } |