Cài đặt abstract class Logger với virtual void log(const string&) const và virtual destructor. Cài đặt ConsoleLogger (in "console: "), TagLogger (in "[TAG] "). Viết hàm static unique_ptr create(const string& kind) trả về ConsoleLogger nếu kind == "c", TagLogger nếu "t". Đọc n cặp (kind, msg), tạo logger và gọi log.
Dòng 1: n. N dòng: kind msg (msg không chứa khoảng trắng).
1 <= n <= 1000 kind thuộc {c,t} 1 <= |msg| <= 50
N dòng output theo log().
Ví dụ:
Đầu vào:
2
c hi
t hello
Đầu ra:
console: hi
[TAG] hello
Giải thích:
Đang tải editor...