浏览器标题切换
浏览器标题切换end

HDU6480-A Count Task-字符串+公式

题意:

给一个字符串(全是小写),求所有的A(连续相同字符的字符串)中的子串个数。

 

公式:

w为相同字母的个数

 w=w+(1+cnt)*cnt/2;

 

AC代码:

复制代码
 1 #include<stdio.h>
 2 #include<iostream>
 3 #include<string.h>
 4 #include<algorithm>
 5 #include<queue>
 6 
 7 using namespace std;
 8 #define inf 0x3f3f3f3f
 9 typedef long long ll;
10 
11 char a[100020];
12 
13 int main()
14 {
15     int T;
16     cin>>T;
17     while(T--)
18     {
19         scanf("%s",a);
20         int len=strlen(a);
21         ll w=0,cnt=1;
22         for(int i=0;i<len-1;i++)
23         {
24             ll cnt=1;
25             while(a[i]==a[i+1])
26                 cnt++,i++;
27 //            if(a[i]==a[i+1])
28 //                cnt++;
29 //            else
30 //            {
31 //                cnt=1;
32             w=w+(1+cnt)*cnt/2;
33 //            }
34         }
35         cout<<w<<endl;
36 
37     }
38     return 0;
39 }
View Code
复制代码

 

posted @   抓水母的派大星  阅读(218)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」
点击右上角即可分享
微信分享提示