t = int(input())
for _ in range(t):
    n = int(input())
    s = input()
    if len(set(s)) == n:#手串中没有相同的宝石,无法破环,返回-1
        print(-1)
        continue
    dic = dict()
    for i in range(n):#哈希表记录手环中每个宝石及其位置
        dic[s[i]] = dic.setdefault(s[i], []) + [i]
    minl = n
    for v in dic.values():#寻找未知最近的两个相同宝石
        if len(v) == 1:
            continue
        for i in range(len(v)):
            if i == 0:#注意环路
                if n - v[-1] + v[0] < minl:
                    minl = n - v[-1] + v[0]
            else:
                if v[i] - v[i - 1] < minl:
                    minl = v[i] - v[i - 1]
    print(minl - 1)