#include <bits/stdc++.h>
using namespace std;
bool check (priority_queue<pair<int, char>> &pq, string &s, int d){
int soViTriConLai = s.length();
while(!pq.empty()){
pair<int, char> pr = pq.top();
pq.pop();
if((pr.first - 1) * d + 1 > s.length()) return false;
}
return true;
}
int main(){
int t; cin >> t;
while(t--){
int d; cin >> d;
string s; cin >> s;
unordered_map<char, int> ump;
for(char c : s)
++ump[c];
priority_queue<pair<int, char>> pq;
for(auto pr : ump)
pq.push({pr.second, pr.first});
if(check(pq, s, d)) cout << "1\n";
else cout << "-1\n";
}
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7Cgpib29sIGNoZWNrIChwcmlvcml0eV9xdWV1ZTxwYWlyPGludCwgY2hhcj4+ICZwcSwgc3RyaW5nICZzLCBpbnQgZCl7CglpbnQgc29WaVRyaUNvbkxhaSA9IHMubGVuZ3RoKCk7CgkKCXdoaWxlKCFwcS5lbXB0eSgpKXsKCQlwYWlyPGludCwgY2hhcj4gcHIgPSBwcS50b3AoKTsKCQlwcS5wb3AoKTsKCQkKCQlpZigocHIuZmlyc3QgLSAxKSAqIGQgKyAxID4gcy5sZW5ndGgoKSkgcmV0dXJuIGZhbHNlOwoJfQoJCglyZXR1cm4gdHJ1ZTsKfQoKaW50IG1haW4oKXsKCWludCB0OyBjaW4gPj4gdDsKCXdoaWxlKHQtLSl7CgkJaW50IGQ7IGNpbiA+PiBkOwoJCXN0cmluZyBzOyBjaW4gPj4gczsKCQkKCQl1bm9yZGVyZWRfbWFwPGNoYXIsIGludD4gdW1wOwoJCWZvcihjaGFyIGMgOiBzKQoJCQkrK3VtcFtjXTsKCQkJCgkJcHJpb3JpdHlfcXVldWU8cGFpcjxpbnQsIGNoYXI+PiBwcTsKCQlmb3IoYXV0byBwciA6IHVtcCkKCQkJcHEucHVzaCh7cHIuc2Vjb25kLCBwci5maXJzdH0pOwoJCQkKCQlpZihjaGVjayhwcSwgcywgZCkpIGNvdXQgPDwgIjFcbiI7CgkJZWxzZSBjb3V0IDw8ICItMVxuIjsKCX0KfQ==