Code bằng C++
Ví dụ 1:
Inp:abc3456789PQ
Out:6
Ví dụ 2:
Inp:abc123
Out:0
Ràng buộc:50% test có | S | ≤ 3000.Còn lại | S | ≤ 10^6
Hãy luôn nhớ cảm ơn và vote 5*
nếu câu trả lời hữu ích nhé!
/* Quang VIPPRO */
#include <bits/stdc++.h>
using namespace std;
string s;
long long res;
int A[101000], a[101000], num[101000];
int fnd(int pos){
int check1 = 0, check2 = 0, check3 = 0;
for(int i = pos; i >= 0; i--){
if(A[i])check1 = 1;
if(a[i])check2 = 1;
if(num[i])check3 = 1;
if(check1 && check2 && check3){
return i;
}
}
return -1;
}
int main(){
cin >> s;
for(int i = 0; i < s.size(); i++){
if(s[i] >= 'A' and s[i] <= 'Z')A[i] = 1;
if(s[i] >= 'a' and s[i] <= 'z')a[i] = 1;
if(s[i] >= '0' and s[i] <= '9')num[i] = 1;
}
for(int i = 5; i < s.size(); i++){
int pos = fnd(i);
//cout << pos << endl;
if(i - pos + 1 < 6){
pos = i - 5;
}
if(pos < 0)continue;
res += pos + 1;
}
cout << res;
}
Hãy giúp mọi người biết câu trả lời này thế nào?
CÂU HỎI MỚI NHẤT
bài này làm kieue gì ạaa
32
835
18
Mình hỏi cho vui thôi chứ mình chấm trên vnoj AC rồi
1160
800
1062
rảnh :)
32
835
18
Đang rảnh :)) còn câu nào nx ko ? mình lm nốt cho trên này nếu ko phải những ôg trong mấy gr trên top thì chx thấy ai code nét
1160
800
1062
:>
1160
800
1062
có zalo k
32
835
18
0869602551
1160
800
1062
mà thoy đặt luôn câu hỏi lên đây ông trl cho tiện
1160
800
1062
CÂU MỚI ĐẶT Ý