题解
2024-07-08 13:03:40
发布于:广东
18阅读
0回复
0点赞
向中靠拢!!!
#include <iostream>
#include <cstdio>
#include <vector>
using namespace std;
char a[1000005];
vector <int> v;
int main(){
int n;
cin >> n >> a + 1;
for(int i = 1; i <= n; i++){
if(a[i] == '*') v.push_back(i);
}
if(v.size() == 0){
cout << 0;
return 0;
}
int mid = v[v.size() / 2];
long long ct = 0;
int l = mid - 1, r = mid + 1;
for(int i = v.size() / 2 - 1; i >= 0; i--){
ct += l - v[i];
l--;
}
for(int i = v.size() / 2 + 1; i < v.size(); i++){
ct += v[i] - r;
r++;
}
cout << ct;
return 0;
}
全部评论 1
别问为什么,问就是直觉(
2024-07-08 来自 广东
0man!
2024-07-28 来自 广东
0题解真香
2024-09-17 来自 广东
0
有帮助,赞一个