题目大意:求当前串中只含q的连续子串的个数
题目思路:水题,但要注意的是计算过程中可能超int范围;
#include<iostream>
#include<algorithm>
#include<cstring>
#include<vector>
#include<stdio.h>
#include<stdlib.h>
#include<queue>
#include<math.h>
#define INF 0x3f3f3f3f
#define MAX 1000005
#define Temp 1000000000 using namespace std; char str[MAX]; long long Find(long long n)
{
return (n*(n+))/;
} int main()
{
int T;
long long ans,sum;
scanf("%d",&T);
while(T--)
{
scanf("%s",str);
int len=strlen(str);
sum=;
ans=;
for(int i=; i<len; i++)
{
if(str[i]=='q')
sum++;
else
{
ans+=Find(sum);
sum=;
}
}
ans+=Find(sum);
printf("%lld\n",ans);
}
return ;
}