Codeforces Round #294 (Div. 2) D. A and B and Interesting Substrings

来源:互联网 发布:caffe识别验证码 编辑:程序博客网 时间:2024/06/04 00:47
http://acm.hust.edu.cn/vjudge/problem/visitOriginUrl.action?id=126640

1 2 3 4 5 6 7 8 9101112131415161718192021222324252627282930
#include <iostream>#include <cstdio>#include <cstring>#include <stdlib.h>#include <queue>#include <map>#define N 100001using namespace std;int a[30];char s[N];map<long long int ,int >q[30];int main(){    while(~scanf("%d",&a[0]))    {        for(int i=1; i<26; i++)            scanf("%d",&a[i]);        scanf("%s",s);        long long int ans=0,sum=0;        int len=strlen(s);        for(int i=0; i<len; i++)        {            ans += q[s[i]-'a'][sum];            sum += a[s[i]-'a'];            q[s[i]-'a'][sum]++;        }       printf("%I64d\n",ans);    }    return 0;}

0 0
原创粉丝点击