t = int(input())
while t:
n, k = input().split()
s = input()
flag = True
for i in range(int(n)//2):
if s[i]!=s[int(n)-1-i]: flag = False; break
if flag or int(k) == 0: print(1)
else: print(2)
t -= 1
#include <bits/stdc++.h>
using namespace std;
int main()
{
int t; cin >>t;
while (t--)
{
int n,k; cin >>n>>k;
char x[n];
for (int i=0;i<n;i++)
cin >>x[i];
int a=0;
for (int i=0;i<n;i++,n--)
{
if (i>n) break;
if (x[i]!=x[n-1])
{a++;break;}
if (i==n) break;
}
if (a==0 || k==0)
cout <<1<<endl;
else
cout <<2<<endl;
}
return 0;
}
165B - Burning Midnight Oil | 17A - Noldbach problem |
1350A - Orac and Factors | 1373A - Donut Shops |
26A - Almost Prime | 1656E - Equal Tree Sums |
1656B - Subtract Operation | 1656A - Good Pairs |
1367A - Short Substrings | 87A - Trains |
664A - Complicated GCD | 1635D - Infinite Set |
1462A - Favorite Sequence | 1445B - Elimination |
1656C - Make Equal With Mod | 567A - Lineland Mail |
1553A - Digits Sum | 1359B - New Theatre Square |
766A - Mahmoud and Longest Uncommon Subsequence | 701B - Cells Not Under Attack |
702A - Maximum Increase | 1656D - K-good |
1426A - Floor Number | 876A - Trip For Meal |
1326B - Maximums | 1635C - Differential Sorting |
961A - Tetris | 1635B - Avoid Local Maximums |
20A - BerOS file system | 1637A - Sorting Parts |