#include <bits/stdc++.h>
using namespace std;
int main() {
// your code goes here
int t,a,b,c,ans,maxi,mini,mid,i,j,k,n,g,h;
vector<int> v,va;
string s;
cin>>t;
while(t--)
{
cin>>n;
for(i=0;i<n;i++)
{
cin>>g;
va.push_back(g);
v.push_back(g);
}
sort(va.begin(),va.end());
k=0;
for(i=0;i<n;i++)
{
if(v[i]!=va[i])
{
k=1;
break;
}
}
// h=0;
// for(i=0;i<n;i++)
// {
// if(v[i]!=va[n-i-1])
// {
// h=1;
// break;
// }
// }
if(k==0)
{
cout<<"0\n";
}
else if(v[0]==va[0] || v[n-1]==va[n-1])
{
cout<<"1\n";
}
else if(v[0]==va[n-1] && v[n-1]==va[0])
{
cout<<"3\n";
}
else
{
cout<<"2\n";
}
v.clear();
va.clear();
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgbWFpbigpIHsKCS8vIHlvdXIgY29kZSBnb2VzIGhlcmUKCWludCB0LGEsYixjLGFucyxtYXhpLG1pbmksbWlkLGksaixrLG4sZyxoOyAKCXZlY3RvcjxpbnQ+IHYsdmE7CglzdHJpbmcgczsKCWNpbj4+dDsKCXdoaWxlKHQtLSkKCXsKCQljaW4+Pm47CgkJZm9yKGk9MDtpPG47aSsrKQoJCXsKCQkJY2luPj5nOwoJCQl2YS5wdXNoX2JhY2soZyk7CgkJCXYucHVzaF9iYWNrKGcpOwoJCX0KCQlzb3J0KHZhLmJlZ2luKCksdmEuZW5kKCkpOwoJCWs9MDsKCQlmb3IoaT0wO2k8bjtpKyspCgkJewoJCQlpZih2W2ldIT12YVtpXSkKCQkJewoJCQkJaz0xOwoJCQkJYnJlYWs7CgkJCX0KCQl9CgkJLy8gaD0wOwoJCS8vIGZvcihpPTA7aTxuO2krKykKCQkvLyB7CgkJLy8gCWlmKHZbaV0hPXZhW24taS0xXSkKCQkvLyAJewoJCS8vIAkJaD0xOwoJCS8vIAkJYnJlYWs7CgkJLy8gCX0KCQkvLyB9CgkJaWYoaz09MCkKCQl7CgkJCWNvdXQ8PCIwXG4iOwoJCX0KCQllbHNlIGlmKHZbMF09PXZhWzBdIHx8IHZbbi0xXT09dmFbbi0xXSkgCgkJewoJCQljb3V0PDwiMVxuIjsKCQl9CgkJZWxzZSBpZih2WzBdPT12YVtuLTFdICYmIHZbbi0xXT09dmFbMF0pCgkJewoJCQljb3V0PDwiM1xuIjsKCQl9CgkJZWxzZSAKCQl7CgkJCWNvdXQ8PCIyXG4iOwoJCX0KCQl2LmNsZWFyKCk7CgkJdmEuY2xlYXIoKTsKCX0KCXJldHVybiAwOwp9