love song

https://codeforces.com/contest/1539/problem/B

每个字母都会出现他的字典序数次

前缀和

#include<iostream>
#include<string>
#include<string.h>
#include<cstdio>
using namespace std;
//前缀和
typedef long long ll;
const int maxn=1e5+6;
int t[maxn],s[maxn];
int main()
{
int n,q;

memset(s,0,sizeof(s));

string a;
cin>>n>>q;
getchar();
cin>>a;

 for(int i=0;i<a.length();i++)
 {
     t[i]=a[i]-'a'+1;
 }
 for(int i=0;i<a.length();i++)
 {
     s[i+1]=s[i]+t[i];
 }
 while(q--)
 {

      int l,r;
       cin>>l>>r;
   cout<<s[r]-s[l-1]<<endl;
 }
}

 

posted @ 2021-07-14 11:07  废柴废柴少女  阅读(43)  评论(0)    收藏  举报