Các lượt nộp
    Danh sách bài
    Trang chủ
    Báo lỗi
    solution
    Đăng nhập
    Đăng nhập

    Đề bài: Nhóm sinh viên theo lớp bằng HashMap<String, ArrayList>

    📖Cần ôn lý thuyết? Đọc bài giảng Buổi 7: Lập trình tổng quát và khung Collections — khóa Lập trình Java

    Cho danh sách N sinh viên (lop, ten). Hãy nhóm sinh viên theo lop và in ra theo định dạng:

    <lop>: <ten1> <ten2> ...
    
    • Sử dụng HashMap<String, ArrayList<String>> để nhóm (không dùng groupingBy của Stream API).
    • In các lớp theo thứ tự alphabet tăng dần (đưa key sang TreeMap hoặc sort danh sách key).
    • Trong mỗi lớp, in danh sách tên theo thứ tự xuất hiện trong input (không sort tên).
    • Định dạng đầu vào:
      • Dòng 1: N (1 ≤ N ≤ 10⁵)
      • N dòng tiếp: <lop> <ten>
    • Ràng buộc đầu vào:
      • lop, ten ≤ 30 ký tự, không khoảng trắng
    • Định dạng đầu ra:
      • Mỗi lớp một dòng: <lop>: <ten1> <ten2> ...

    Ví dụ:

    Đầu vào:

    5
    K62B An
    K62A Binh
    K62B Cuong
    K62A Dung
    K62C Em
    

    Đầu ra:

    K62A: Binh Dung
    K62B: An Cuong
    K62C: Em
    

    Giải thích:

    Nhóm K62A: Binh, Dung; K62B: An, Cuong; K62C: Em. Sắp lớp alphabet → A, B, C.

    Đầu vào:

    3
    L1 x
    L1 y
    L1 z
    

    Đầu ra:

    L1: x y z
    

    Giải thích:

    Cùng một lớp L1: x, y, z (giữ thứ tự xuất hiện).

    Đầu vào:

    1
    LZ solo
    

    Đầu ra:

    LZ: solo
    

    Đầu vào:

    4
    B a
    A b
    B c
    A d
    

    Đầu ra:

    A: b d
    B: a c
    

    Chủ đề

    ☕ JavaJavaCollections FrameworkTất cả môn học

    Đang tải editor...