Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <algorithm>
- #include <iostream>
- #include <vector>
- using namespace std;
- int main() {
- int numeroComputer, numeroPrese;
- cin >> numeroComputer >> numeroPrese;
- vector<int> potenze(numeroComputer);
- vector<string> prese(numeroComputer);
- for(int i = 0; i < potenze.size(); i++) {
- cin >> potenze.at(i);
- }
- for(int i = 0; i < potenze.size(); i++) {
- cin >> prese.at(i);
- }
- size_t L10 = 0, L16 = 0, bipasso = 0;
- for(int i = 0; i < numeroPrese; i++) {
- string presaInput;
- cin >> presaInput;
- if(presaInput == "L10") L10 ++;
- if(presaInput == "L16") L16 ++;
- if(presaInput == "bipasso") bipasso ++;
- }
- vector<int> L10List, L16List;
- for(int i = 0; i < potenze.size(); i++) {
- if(prese[i] == "L10") {
- L10List.push_back(potenze[i]);
- }
- if(prese[i] == "L16") {
- L16List.push_back(potenze[i]);
- }
- }
- sort(L10List.begin(), L10List.end(), greater<int>());
- sort(L16List.begin(), L16List.end(), greater<int>());
- int sum = 0;
- for(int i = 0; i < min(L10, L10List.size()); i++) {
- sum = sum + L10List.at(i);
- }
- for(int i = 0; i < L16List.size(); i++) {
- sum = sum + L16List.at(i);
- }
- vector<int> avanzo;
- for(int i = L10; i < L10List.size(); i++) {
- avanzo.push_back(L10List.at(i));
- }
- for(int i = L16; i < L16List.size(); i++) {
- avanzo.push_back(L16List.at(i));
- }
- sort(avanzo.begin(), avanzo.end(), greater<int>());
- for(int i = 0; i < min(bipasso, avanzo.size()); i++) {
- sum = sum + avanzo.at(i);
- }
- cout << sum;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement