Giả sử chúng ta có một chuỗi S với n ký tự. S là một từ được phân tách bằng một dấu cách, bao gồm các chữ cái tiếng Anh nhỏ và viết hoa. Khối lượng của từ là số chữ cái viết hoa trong từ đã cho. Và khối lượng của văn bản là khối lượng tối đa của tất cả các từ trong văn bản. Chúng ta phải tìm khối lượng của văn bản đã cho.
Các bước
Để giải quyết vấn đề này, chúng tôi sẽ làm theo các bước sau -
ans := 0 a := 0 n := size of S for initialize i := 0, when i <= n, update (increase i by 1), do: s := S[i] if s >= 'A' and s <= 'Z', then: (increase a by 1) if s is same as blank space, then: ans := maximum of ans and a a := 0 ans := maximum of ans and a return ans
Ví dụ
Hãy cùng chúng tôi xem cách triển khai sau để hiểu rõ hơn -
#include <bits/stdc++.h> using namespace std; int solve(string S){ int ans = 0, a = 0; int n = S.size(); for (int i = 0; i <= n; i++){ char s = S[i]; if ((s >= 'A') && (s <= 'Z')) a++; if (s == ' '){ ans = max(ans, a); a = 0; } } ans = max(ans, a); return ans; } int main(){ string S = "Paper MILL"; cout << solve(S) << endl; }
Đầu vào
"Paper MILL"
Đầu ra
4