link to ques–https://hack.codingblocks.com/contests/c/457/348
#include
#include
using namespace std;
bool check(string a,int i);
int main()
{
string a;
cin>>a;
bool ans=check(a,0);
if(ans)cout<<"true";
else cout<<"false";
}
bool check(string a,int i)
{
if(a[i]=='\0')
return true;
if(i==0)
{
if(a[i]!='a')
return false;
}
if(a[i]=='a')
{
if(!(a[i+1]=='\0'||(a[i+1]=='b'&& a[i+2]=='b') ))
return false;
}
if(a[i]=='b'&& a[i+1]=='b')
{
if(!(a[i+2]=='\0'||a[i+2]=='a'))
return false;
}
if(check(a,i+1))
return true;
}