Danh sách sinh viên (Đề 2)


Submit solution

Points: 3 (partial)
Time limit: 1.0s
Memory limit: 98M

Author:
Problem type
Allowed languages
C++

Mỗi sinh viên trong một khóa được coi là một đối tượng gồm những thuộc tính sau:

  • Họ và tên.
  • Mã học sinh (xâu gồm \(9\) kí tự số).

Điểm sinh viên là đối tượng con của sinh viên, có thêm một thuộc tính là điểm trung bình chung hệ \(4\).

Viết lớp sinh viên, điểm sinh viên (kế thừa từ lớp sinh viên), nhập các thông tin của sinh viên rồi thực hiện những yêu cầu dưới đây:

\(a)\) Tìm mã của các sinh viên có họ tên (cho trước) trùng nhau.

\(b)\) In ra danh sách sinh viên giảm dần theo thứ tự tăng dần bảng chữ cái của họ và tên, hai người trùng họ tên thì so sánh theo mã sinh viên.

Đặc tả đầu vào

Dòng đầu tiên chứa \(2\) số nguyên \(a, b\) (chỉ nhận giá trị \(0\) hoặc \(1\)), với ý nghĩa số nào bằng \(0\) thì bỏ qua phần xuất kết quả ở câu tương ứng.

Dòng tiếp theo chứa số nguyên \(n\), số sinh viên.

\(3*n\) dòng tiếp theo, mỗi \(3\) dòng đặc tả các thông tin của một sinh viên như sau:

  • Dòng thứ nhất chứa mã sinh viên.
  • Dòng thứ hai chứa họ và tên sinh viên (chỉ gồm các chữ cái tiếng Anh, không có dấu cách ở đầu và cuối).
  • Dòng thứ ba ghi điểm sinh viên.

Dòng cuối cùng chứa họ và tên sinh viên cần tìm kiếm.

Đặc tả đầu ra

Câu \(a\): Nếu tồn tại họ và tên, xuất ra một dãy các mã sinh viên, thứ tụ theo danh sách sinh viên nhập vào. Nếu không xuất ra "Khong tim thay sinh vien"

Câu \(b\): Xuất ra \(n\) dòng, mỗi dòng là thông tin của một sinh viên với định dạng MaSinhVien - Ho Va Ten - Diem.

Ghi chú: Máy chấm sẽ tự động bỏ qua những dòng trống và những dấu cách ở cuối dòng.

Chú ý: Để bỏ qua buffer '\n' trong C++, sử dụng cin.ignore(1e9, '\n'), không sử dụng fflush(stdin).

Tỉ lệ test

\(60\%\) số test có \(a = 1, b = 0\).

\(40\%\) số test có \(a = b = 1\).

\(n \le 1000\) trong mọi test.

Ví dụ

Đầu vào:

1 1
4
123456789
Lul Lul Lul
4
135901355
Lul Lul Lul
2.5
301598350
Lfpfie Aijeb Add
3
929363656
Skjals Ajbjds Aa
3
Lul Lul Lul

Đầu ra:

123456789 135901355

929363656 - Skjals Ajbjds Aa - 3
135901355 - Lul Lul Lul - 2.5
123456789 - Lul Lul Lul - 4
301598350 - Lfpfie Aijeb Add - 3
QDUY

Comments

There are no comments at the moment.