LBC_3A - Dr. Patel và cuộc phỏng vấn
Xem dạng PDF
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
Input:
stdin
Output:
stdout
Tác giả:
Dạng bài
Dr. Patel đang thực hiện bài phỏng vấn cho công ty Gooogle. Bài phỏng vấn của Dr. Patel như sau:
Cho một xâu ký tự ~S~ có độ dài ~N~. Yêu cầu tìm xâu con liên tiếp có kí tự giống nhau dài nhất trong xâu ký tự ~S~.
Input
- Dòng đầu tiên chứa 1 số ~T~ là số bộ test ~(1 \leq T \leq 100)~.
- Với mỗi bộ test, gồm 2 dòng, dòng đầu tiên là số nguyên ~N~ ~(1 \leq N \leq 10^5)~ và một xâu ký tự ~S~ chỉ gồm các ký tự in hoa.
Output
- Gồm ~T~ dòng là kết quả cho từng test. Giống như định dạng của sample.
Sample
Input #1
3
9
BBCCZZZZO
17
GGOOOOOOOOOGLEEEE
1
G
Output #1
Case #1: 4
Case #2: 9
Case #3: 1
Giải thích #1
Chẳng hạn BBCCZZZZO có Z gồm 4 ký tự gần nhau nhiều nhất nên in ra ~4~, tương tự với GGOOOOOOOOOGLEEEE có 9 chữ O gần nhau nhiều nhất nên in ra ~9~.
Bình luận
include <bits/stdc++.h>
using namespace std; long long a, b, c, k, x, i, d[1005][1005], j, m, n, pfs[1000001], y=0; string s; map<long long, long long>dem; int main () { iosbase::syncwith_stdio(false); cin.tie(0); cout.tie(0); cin>>b; for(x=1; x<=b; x++){ cin>>c; cin>>s; i=0, j=0; n=0; while(i<s.size()){ while(i<s.size() && s[i]!=s[i+1]) i++; j=i; while(i<s.size() && s[i]==s[i+1]) i++; n=max(n, i-j+1); } cout<<"Case #"<<x<<": "<<n<<"\n"; } return 0; }
xin upvote