← Home
package main

import (
	"bufio"
	"fmt"
	"os"
)

type FastScanner struct {
	r *bufio.Reader
}

func NewFastScanner() *FastScanner {
	return &FastScanner{r: bufio.NewReaderSize(os.Stdin, 1<<20)}
}

func (fs *FastScanner) Next() string {
	buf := make([]byte, 0, 16)
	for {
		b, err := fs.r.ReadByte()
		if err != nil {
			return string(buf)
		}
		if b > ' ' {
			buf = append(buf, b)
			break
		}
	}
	for {
		b, err := fs.r.ReadByte()
		if err != nil || b <= ' ' {
			break
		}
		buf = append(buf, b)
	}
	return string(buf)
}

func atoi(s string) int {
	n := 0
	for i := 0; i < len(s); i++ {
		n = n*10 + int(s[i]-'0')
	}
	return n
}

func main() {
	in := NewFastScanner()
	out := bufio.NewWriterSize(os.Stdout, 1<<20)
	defer out.Flush()

	t := atoi(in.Next())
	for ; t > 0; t-- {
		_ = atoi(in.Next())
		s := in.Next()

		l := -1
		for i := 0; i < len(s); i++ {
			if s[i] == 'A' {
				l = i
				break
			}
		}

		r := -1
		for i := len(s) - 1; i >= 0; i-- {
			if s[i] == 'B' {
				r = i
				break
			}
		}

		if l == -1 || r == -1 || l > r {
			fmt.Fprintln(out, 0)
		} else {
			fmt.Fprintln(out, r-l)
		}
	}
}