eolymp
bolt
Попробуйте наш новый интерфейс для отправки задач
Задачи

Java Человек Учитель 6

Java Человек Учитель 6

Лимит времени 1 секунда
Лимит использования памяти 128 MiB

Реализуйте класс Person.

Реализуйте класс Teacher который наследует Person.

class Person 
{
  protected String Surname, Name;
  protected int Age;
  Person(String Surname, String Name, int Age) // Конструктор
  public String toString() // Вывести Surname Name Age
}

class Teacher extends Person 
{
  protected String Subject;
  protected int Salary;
  Teacher(String Surname, String Name, int Age, String Subject, int Salary) // Конструктор
  Teacher(Teacher a) // Конструктор копирования
  public String toString() // Вывести Surname Name Age Subject Salary
}

class ListOfPeople
{
  ArrayList<Person> a = new ArrayList<Person>(); 
  public void add(Person p) //  Добавить человека p в массив
  public int size() // Вернуть размер массива
  public String toString() // Вывести людей в массиве. Каждого человека выводить в отдельной строке
  public int getTeachersBudget() // Вернуть общий бюджет (сумму Зарплат) учителей
  public int getTeachersBudget(String Subject) // Вернуть общий бюджет (сумму Зарплат) учителей ведущих предмет Subject
  public double getTeachersAverageSalary() // Вернуть среднюю зарплату учителей
  public double getTeachersAverageSalary(String Subject) // Вернуть среднюю зарплату учителей ведущих предмет Subject
}

Список людей будет создан:

ListOfPeople list = new ListOfPeople();

Входные данные будут добавлены в list. Далее будет выведена следующая информация:

  • общий бюджет учителей (сумма зарплат Учителей)

  • общий бюджет учителей ведущих физику

  • среднюю зарплату учителей

  • среднюю зарплату учителей ведущих математику

System.out.println(list.getTeachersBudget());
System.out.println(list.getTeachersBudget("Math"));
System.out.println(list.getTeachersAverageSalary());
System.out.println(list.getTeachersAverageSalary("Physics"));

Входные данные

Каждая строка содержит одного из двух людей в следующем формате:

  • PersonSurname Name Age

  • TeacherSurname Name Age Subject Salary

Выходные данные

Выведите следующую информацию (каждое число выводить в отдельной строке):

  • общий бюджет учителей (сумма зарплат Учителей)

  • общий бюджет учителей ведущих математику

  • среднюю зарплату учителей

  • среднюю зарплату учителей ведущих физику

Пример

Входные данные #1
Person Ivanov Sergey 28
Teacher Petrov Ivan 34 Physics 400
Teacher Babayev Petr 28 Physics 450
Person Lenov Yuriy 21
Teacher Ermolov Kirill 44 Math 400
Teacher Fedoseev Nikita 38 Math 630
Teacher Egorova Dasha 32 Geography 450
Выходные данные #1
2330
1030
466.0
425.0
Автор Михаил Медведев