Các lượt nộp
    Danh sách bài
    Trang chủ
    Báo lỗi

    solution

    Đề bài: [C++] Move + vector: tránh copy khi push_back rvalue

    Cài đặt class Big chứa string s. Constructor mặc định, constructor Big(string), copy constructor (in "copy"), move constructor noexcept (in "move"). Đọc n, sau đó vector v; reserve(n). Đọc n chuỗi, mỗi chuỗi thực hiện v.push_back(Big(s)) (đối số là rvalue tạm). In tổng số copy và tổng số move sau khi xong.

    • Định dạng đầu vào:

      Dòng 1: n. N dòng tiếp theo: mỗi dòng một chuỗi không khoảng trắng.

    • Ràng buộc đầu vào:

      1 <= n <= 100 1 <= |s| <= 50

    • Định dạng đầu ra:

      Theo thứ tự: từng dòng "move" được in trong quá trình push_back; cuối cùng hai dòng: copies (=0) và moves (=n).

    Ví dụ:

    Đầu vào:

    2
    hello
    world
    

    Đầu ra:

    move
    move
    0
    2

    Giải thích:

    move/move/0/2.

    Đang tải editor...