[Buổi 23][Struct][HW] Bài 3: Search Student by ID


LÀM BÀI

Points: 100
Time limit: 1.0s
Memory limit: 256M

Author:
Problem types
Allowed languages
C++

Search Student by ID

Bối cảnh

Một danh sách sinh viên được lưu dưới dạng struct Student {id,name,gpa} với ID duy nhất. Hệ thống nhận một target ID và cần tìm tuyến tính record tương ứng. Bài Easy nhằm củng cố việc truyền/đọc field của record trong một vòng lặp, không cần map vì mục tiêu hiện tại là struct chứ không tối ưu truy vấn. Nếu tìm thấy phải format GPA hai chữ số; nếu hết danh sách vẫn chưa thấy thì in NOT_FOUND.

Ngoài kết quả số học, bài còn kiểm tra việc mỗi thực thể được giữ dưới dạng một record nhất quán: các field phải luôn đi cùng nhau qua bước đọc, lọc, thống kê hoặc sắp xếp. Khi thiết kế lời giải, nên xác định rõ record gốc và record/aggregate suy ra để tránh dùng nhiều mảng song song làm lệch dữ liệu.

Yêu cầu

  1. Đọc n Student và một id cần tìm.
  2. Tìm tuyến tính.
  3. Nếu thấy in name gpa; nếu không NOT_FOUND.

Input

Dòng 1 n; n dòng id name gpa; dòng cuối target id.

Output

Một dòng.

Ràng buộc

1 ≤ n ≤ 5000.

Ví dụ 1

Input

3
S1 An 3
S2 Binh 3.5
S3 Chi 4
S2

Output

Binh 3.50

Giải thích

Target là S2. Duyệt S1 không khớp, đến S2 thì ID bằng target nên in field name Binh và GPA3.5 với hai chữ số thành 3.50. Không cần xét S3 sau khi đã tìm thấy.

Ví dụ này đồng thời kiểm tra rằng các field của cùng một record không bị lệch khi duyệt hoặc sắp xếp. Quy tắc tie-break/giữ thứ tự chỉ được áp dụng sau khi dữ liệu cần so sánh đã được xác định đúng, nên kết quả trên là hệ quả trực tiếp của state record sau xử lý.

Ví dụ 2

Input

1
A A 0
A

Output

A 0.00

Giải thích

Danh sách chỉ có record A và target cũng là A, nên tìm thấy ngay ở phần tử đầu. GPA0 được format thành 0.00, output A 0.00.

Ví dụ này đồng thời kiểm tra rằng các field của cùng một record không bị lệch khi duyệt hoặc sắp xếp. Quy tắc tie-break/giữ thứ tự chỉ được áp dụng sau khi dữ liệu cần so sánh đã được xác định đúng, nên kết quả trên là hệ quả trực tiếp của state record sau xử lý.

Thông tin học tập

  • Module: M07
  • Buổi: B23
  • Loại bài: HOMEWORK
  • Độ khó: Easy
  • Concepts: struct, vector, linear search
  • Giới hạn kiến thức: B01-B23
  • Time limit: 1 second(s)
  • Memory limit: 256 MB
  • Point: 100

Comments

There are no comments at the moment.

Zalo