// pra.cpp // version 1 // // Autor: Jakub Chmist // Utworzony 22.11.2017. #include<iostream> //#include<cstdlib> //#include<cmath> //#include <set> #include <vector> #include <algorithm> //#include <iterator> using namespace std; vector <int> t_pomiary; vector < vector <int> > t_analiza; int main() { ios_base::sync_with_stdio(0); cin.tie(0); int n, m; //n - ilosc pomiarow, m - ilosc dzieci w klasie vector<pair<int, int>> t_zmiany; cin >> n >> m; int pomiar; //Wczytuje pomiary for (int i = 0; i < n; i++){ cin >> pomiar; t_pomiary.push_back(pomiar); } pomiar = 1; //nr pierwszego ucznia t_pomiary.push_back(pomiar); int nr_pomiaru, wartosc; //Wczytuje zmiany do wektora par for ( int i = 0; i < m - 1; ++i ){ cin >> nr_pomiaru >> wartosc; t_zmiany.push_back(make_pair(nr_pomiaru, wartosc)); } //Wypelniam kontener z wszystkimi wynikami i nr ucznia na koncu //dla pierwszego ucznia t_analiza.push_back(t_pomiary); //dla pozostalych uczniow for (int j = 1; j < m; j++){ t_pomiary[t_zmiany[j-1].first - 1] = t_zmiany[j-1].second; t_pomiary[n] = j + 1; t_analiza.push_back(t_pomiary); } //Sortuje wektor wektorow sort (t_analiza.begin(), t_analiza.end()); //Wypisuje ostatnie pole (nr ucznia) z posortowanego wektora wektorow for (int i = 0; i < m; i++){ cout << t_analiza[i][n] << " "; } cout << "\n"; 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 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 | // pra.cpp // version 1 // // Autor: Jakub Chmist // Utworzony 22.11.2017. #include<iostream> //#include<cstdlib> //#include<cmath> //#include <set> #include <vector> #include <algorithm> //#include <iterator> using namespace std; vector <int> t_pomiary; vector < vector <int> > t_analiza; int main() { ios_base::sync_with_stdio(0); cin.tie(0); int n, m; //n - ilosc pomiarow, m - ilosc dzieci w klasie vector<pair<int, int>> t_zmiany; cin >> n >> m; int pomiar; //Wczytuje pomiary for (int i = 0; i < n; i++){ cin >> pomiar; t_pomiary.push_back(pomiar); } pomiar = 1; //nr pierwszego ucznia t_pomiary.push_back(pomiar); int nr_pomiaru, wartosc; //Wczytuje zmiany do wektora par for ( int i = 0; i < m - 1; ++i ){ cin >> nr_pomiaru >> wartosc; t_zmiany.push_back(make_pair(nr_pomiaru, wartosc)); } //Wypelniam kontener z wszystkimi wynikami i nr ucznia na koncu //dla pierwszego ucznia t_analiza.push_back(t_pomiary); //dla pozostalych uczniow for (int j = 1; j < m; j++){ t_pomiary[t_zmiany[j-1].first - 1] = t_zmiany[j-1].second; t_pomiary[n] = j + 1; t_analiza.push_back(t_pomiary); } //Sortuje wektor wektorow sort (t_analiza.begin(), t_analiza.end()); //Wypisuje ostatnie pole (nr ucznia) z posortowanego wektora wektorow for (int i = 0; i < m; i++){ cout << t_analiza[i][n] << " "; } cout << "\n"; return 0; } |