自己手搓了几组数据,都没问题
record
#include<bits/stdc++.h>
using namespace std;
int op(int l)
{
if(l%3==0)
return 2*(l/3);
else
return 2*(l/3)+1;
}
int main()
{
int t;
scanf("%d",&t);
for(; t>0; t--)
{
int ans=0,n;
string s;
cin>>n>>s;
int len=1;
for(int i=0;i<n;i++)
{
if(s[i]!=s[i+1])
{
ans+=op(len);
len=1;
}
else
len++;
}
printf("%d\n",ans);
}
return 0;
}