Count Number of subsequences of the form a^i b^j c^k [Amazon]

Problem:

Find the number  of subsequences of the form aibjck, i.e., it consists of i number of  ’a’ characters, followed by j  i number of  ’b’ characters, followed by k  i number of  ’c’ characters where i >= 1, j >=1 and k >= 1 from a given string S.

#include <stdio.h>
#include <string.h>




int main() {
	//code
	int t,i,aCount,bCount,cCount;
	char s[10000];
	scanf("%d",&t);
	while(t--)
	{
	    scanf("%s",s);
	    cCount=0;
	    bCount=0;
	    aCount=0;
	    for(i=0;i<strlen(s);i++)
	    {
	        if(s[i]=='a')
	        {
	            aCount=1+2*aCount;
	        }
	        if(s[i]=='b')
	        {
	            bCount=aCount+2*bCount;
	        }
	        if(s[i]=='c')
	        {
	            cCount=bCount+2*cCount;
	        }
	    }
	    printf("%d\n",cCount);
	}
	return 0;
}

 

Comments are closed.