#include<bits/stdc++.h>
using namespace std;
#define int long long
int arr[1000010],ansx[1000010];
bool cmp(int a,int b){
if(a%2==1&&b%2==0) return true;
if(b%2==1&&a%2==0) return false;
return a>b;
}
signed main(){
int t;
cin>>t;
while(t--){
int n,m,k,v=1,ans=0,cnt=1;
cin>>n>>m>>k;
for(int i=1;i<=n;i++){
cin>>arr[i];
}
for(int i=2;i<=n;i++){
if(arr[i]==arr[i-1]){
v++;
}else{
if(v!=0) ansx[cnt++]=v;
v=1;
}
}ansx[cnt++]=v;
sort(ansx+1,ansx+cnt,cmp);
int cnt1=1;
while(cnt1<cnt){
if(ansx[cnt1]==1) ans++;
else{
if(m>=ansx[cnt1]/2){
ans+=ansx[cnt1];
m-=ansx[cnt1]/2;
}else{
if(m>0) ans+=m*2+1;
else ans++;
m=0;
}
}cnt1++;
ansx[cnt1-1]=0;
}
cout<<ans<<"\n";
}
}