GeeksforGeeks Solution For Hard Domain .Below You Can Find The Solution Of School Basic ,Easy ,Medium . Or Hackerrank Solution You Can Also Direct Submit Your Solution to Geeksforgeeks Same Problem .You Need to login then you can submit you answers
Problem :- Given a number. The number may contain many same continuous digits in it. The task is to count number of ways to spell the number.
For example, consider 8884441100, one can spell it simply as triple eight triple four double two and double zero. One can also spell as double eight, eight, four, double four, two, two, double zero.
Submit Your Solution :- Click Here
Solution :-
#include<bits/stdc++.h>
using namespace std;
typedef long long int ll;
ll spellsCount(string num)
{
int n = num.length();
ll result = 1;
for (int i=0; i<n; i++)
{
int count = 1;
while (i < n-1 && num[i+1] == num[i])
{
count++;
i++;
}
result = result * pow(2, count-1);
}
return result;
}
int main()
{
int t;
cin>>t;
while(t--)
{
string num ;
cin>>num;
cout << spellsCount(num);
cout<<endl;
}
return 0;
}
Output:-
0 Comments: