- Mã:
- 1921_OOP_Mid_Remake_1_1
- Tên:
- Câu 1
- Dạng thi:
- oi
- Thang điểm:
- 5 điểm
- Giới hạn thời gian:
- 1 giây
- Giới hạn bộ nhớ:
- 256 MB
- Được tạo bởi:
- khiet
Xây dựng lớp Contestant dùng để mô tả
thông tin bài làm của một thí sinh trong cuộc thi. Cụ thể:
-
id (string) :
Mã số của thí sinh
-
n (int) : Số
lượng bài trong cuộc thi
- scores (int[ ]): Mảng
số nguyên dương với n phần tử, với mỗi phần tử i là kết quả của bài thứ i. Có hai trường hợp:
o Nếu giá trị là -1 : Thí sinh
không làm đúng bài thứ i
o Nếu giá trị khác -1 : Thí sinh
làm đúng bài thứ i và giá trị đại diện cho thời điểm thí sinh làm đúng bài thứ
i
-
Các phương thức khởi tạo (mặc định,
có tham số, sao chép): mặc định id là chuỗi rỗng,
n = 0, scores là mảng số nguyên với 15 phần tử
Dựa vào thiết
kế lớp đối tượng cơ bản (như hình trên), hãy bổ sung thêm:
-
Hàm getAC(): Trả về số
nguyên là số lượng bài đúng của thí sinh
-
Hàm getTime(): Trả về số
nguyên là tổng của các thời điểm giải được các bài đúng
Giải thích:
Giả sử cuộc thi có 5 bài, một thí
sinh có kết quả là mảng scores = [-1,20,25,45,-1]
Bài thứ 1 và bài thứ 5 sai nên giá
trị là -1, các bài đúng là 2,3,4 giá trị là 20, 25 và 45 nên đây là các bài
đúng. Ứng với mỗi giá trị là thời điểm làm đúng bài của thí sinh
Vì vậy:
-
Hàm getAC() sẽ trả về kết
quả là 3
- Hàm getTime() sẽ trả về kết quả là 90 (20 + 25 + 45 = 90) (Lưu ý chỉ tính tổng thời điểm của những bài đúng)
Câu 01: (5.0 đ): Xây dựng lớp đối tượng Contestant như yêu cầu trên. Bổ sung cho lớp Contestant các hàm sau:
-
Quá tải
toán tử >> và << theo Input và Output bên dưới
Input:
-
Dòng đầu
tiên chứa số nguyên c và n lần lượt là số lượng thí sinh và số lượng bài của cuộc
thi
-
c dòng tiếp
theo mỗi dòng chứa lần lượt Mã số thí sinh, theo sau mã số là n số nguyên là
thông tin bài làm của mỗi thí sinh theo mô tả bên trên
Output:
-
Gồm n dòng,
mỗi dòng là thông tin của một thí sinh theo thứ tự input với định dạng:
{id}-{getAC()}-{getTime()}
Ví dụ 1:
Input
Output
3 5
TS01 -1 20 40 64 -1
TS02 -1 -1 -1 -1 -1
TS03 5 10 23 34 83
TS01-3-124
TS02-0-0
TS03-5-155
Ví dụ 2:
Input
Output
4 5
TS01 -1 20 40 64 -1
TS02 5 16 25 40 100
TS03 5 10 23 34 83
TS04 -1 25 -1 -1 -1
TS01-3-124
TS02-5-186
TS03-5-155
TS04-1-25
Theme :
Mời bạn soạn code