#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; typedef long long LL; typedef long double LD; typedef vector VI; typedef pair PII; const LD eps=1e-9; const LD PI=atan2((LD)0,(LD)-1); const LL MOD=1000000007; const int INF=1<<30; const int ARR_INF=1<<6; const int MAXN=100005; char str[MAXN]; int sum[26][MAXN]; void pre_cal(int n) { for(int i=0; i<26; i++) { for(int j=0; j<=n; j++) sum[i][j] = 0; for(int j=1; j<=n; j++) { if(str[j-1] == 'A'+i) sum[i][j] = sum[i][j-1] + 1; else sum[i][j] = sum[i][j-1]; } } } int get_answer(int l, int r) { for(int i=0; i<26; i++) { if(sum[i][r] - sum[i][l-1] > 0) return sum[i][r] - sum[i][l-1]; } } int main() { int T; int n, q; scanf("%d", &T); for(int t=1; t<=T; t++) { scanf("%d%d", &n, &q); scanf("%s", str); pre_cal(n); printf("Case #%d:\n", t); while(q--) { int l, r; scanf("%d%d", &l, &r); printf("%d\n", get_answer(l, r)); } } return 0; }