Gửi bài giải
Điểm:
1,00 (OI)
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
256M
Tác giả:
Dạng bài
Ngôn ngữ cho phép
C, C#, C++, Go, Java, Pascal, Perl, PHP, Python, Ruby, Rust, Scratch, Swift
Có thể bạn đã biết, các danh từ riêng như tên người, tên địa danh là các danh từ riêng và chúng cần được viết hoa các chữ cái đầu mỗi từ. Tuy nhiên, người soạn thảo danh sách đã quá vội nên xảy ra lỗi viết hoa thường trong danh sách. Hãy viết 1 chương trình giúp mình chuẩn hóa lại nhé.
Input
- Dòng 1 là số nguyên dương ~T~, số lượng tên riêng trong danh sách
- ~T~ dòng tiếp theo, mỗi dòng là một tên riêng cần chuẩn hóa
Giới hạn
- ~1 \le T \le 10^4~
- Các tên riêng có độ dài không quá 100 và không có khoảng trắng thừa
- Các tên riêng bao gồm chữ cái, số và có thể có ký tự đặc biệt (!,?,...)
Output
- Các tên riêng đã được chuẩn hóa tương ứng trên mỗi dòng
Sample
Input #1
2
lAp Trinh Khong Kho
luyen code
Output #1
Lap Trinh Khong Kho
Luyen Code
Bình luận
haha. i am so stupid
Gợi ý cách làm:
Hàm capitalize_name nhận một tham số là name, là chuỗi cần được chuyển đổi. Trong hàm này:
Một stringstream iss được sử dụng để chia chuỗi name thành các từ riêng biệt. Mỗi từ được chuyển đổi sao cho chữ cái đầu tiên của từ trở thành chữ hoa, còn lại là chữ thường. Cách làm này được thực hiện thông qua việc lặp qua các ký tự của từ, bắt đầu từ vị trí thứ 1, và chuyển đổi các ký tự thành chữ thường. Các từ đã được chuyển đổi được lưu vào vector words. Sau đó, một stringstream oss được sử dụng để tạo ra chuỗi kết quả đã được chuyển đổi.
Lặp qua các từ trong vector words, nối các từ lại với nhau bằng khoảng trắng và ghi vào stringstream oss. Cuối cùng, hàm trả về chuỗi kết quả đã được chuyển đổi bằng cách sử dụng phương thức str() của stringstream oss.
Trong hàm main:
Chương trình nhập số lượng test cases T. Sau đó, vòng lặp for chạy từ 0 đến T - 1. Mỗi lần lặp, chương trình nhập một chuỗi từ đầu vào thông qua hàm getline, sau đó in ra chuỗi đã được chuyển đổi bằng cách gọi hàm capitalize_name và xuất ra màn hình.
sau bao nhieu lan case thi no thanh cong roi
sao đc vậy bạn
sao cu case suot thoi:')) ai chi giao them voi a
ko bt lm
hay thiệt
sai test quai huhu