Advertisement
Guest User

Untitled

a guest
Nov 18th, 2017
195
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.53 KB | None | 0 0
  1. /*Первая строка входного файла - целое число N от 0 до 105 - общеее количество оценок.
  2. Далее идут N строк, каждая из которых содержит фамилию очередного студента (строка из латинских букв
  3.                                                                                                                                            длиной от 1 до 20 символов) и его оценку - целое число от 0 до 109.
  4. Формат вывода
  5.  
  6. Выведите N строк. k-я строка должна содержать среднюю оценку студента, которому была выставлена k-я
  7. оценка в исходном списке, после объявления k оценок. Средняя оценка округляется до ближайшего целого
  8.  вниз (то есть, от нее отбрасывается дробная часть).*/
  9. #include <iostream>
  10. #include <map>
  11. #include <vector>
  12. #include <string>
  13. #include <utility>
  14. #include <math.h>
  15. using namespace std;
  16.  
  17. int main() {
  18.     int k, n;
  19.     string sname;
  20.     map<string, pair<double, double> > marks;
  21.     cin >> n;
  22.     for (int i = 0; i < n; ++i) {
  23.         cin >> sname;
  24.         cin >> k;
  25.         marks[sname].first += k;
  26.         marks[sname].second += 1;
  27.         cout << floor(marks[sname].first / marks[sname].second);
  28.         cout << '\n';
  29.     }
  30. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement