what if the alphabet is {a,b,c,d} and we have to print substrings of length 2 or 3 ?
On Sat, Aug 6, 2011 at 11:01 AM, Tushar Bindal <tushicom...@gmail.com>wrote: > @gaurav > didn't get this: > > Just to increase the size of the string by one. > > Then you can put any character at the the new last position, which is 'l'. > > can u pls explain that? > > > On Fri, Aug 5, 2011 at 2:57 PM, Nitin Nizhawan > <nitin.nizha...@gmail.com>wrote: > >> Ok, Thanks >> >> >> On Fri, Aug 5, 2011 at 2:53 PM, Gaurav Menghani < >> gaurav.mengh...@gmail.com> wrote: >> >>> Even if the number of elements is more than two, it is possible with >>> bitwise operations, but it gets clumsy. >>> >>> Suppose your alphabet has 4 characters. You can either: >>> - Count from 0 to (1<<4*n)-1 and use four bits to denote the selection >>> of the alphabet. Also, only one bit amongst those four should be set. >>> It is highly inefficient. >>> - Keep n nested loops and inside each loop you iterate from 0 to >>> (1<<4)-1 and use the standard bitwise operations. The con here is that >>> you have to hardcode the number of nested loops. >>> >>> On Fri, Aug 5, 2011 at 2:44 PM, Nitin Nizhawan <nitin.nizha...@gmail.com> >>> wrote: >>> > @Varun I think it can be done using bits, if input character set has >>> only >>> > two elements. Or could u plz explain? >>> > >>> > On Fri, Aug 5, 2011 at 2:29 PM, Varun Jakhoria < >>> varunjakho...@gmail.com> >>> > wrote: >>> >> >>> >> I think it can be done using bitwise ANDing with a mask >>> >> >>> >> On Fri, Aug 5, 2011 at 12:58 PM, Gaurav Menghani >>> >> <gaurav.mengh...@gmail.com> wrote: >>> >> > An Implementation: >>> >> > >>> >> > #include<iostream> >>> >> > #include<string> >>> >> > using namespace std; >>> >> > >>> >> > string alphabet; >>> >> > int maxlen; >>> >> > void backtrack(string s,int l) >>> >> > { >>> >> > if(l==maxlen) { cout<<s<<endl; return; } >>> >> > s.push_back('-'); >>> >> > for(int i=0;i<alphabet.size();i++) >>> >> > { s[l]=alphabet[i]; backtrack(s,l+1); } >>> >> > } >>> >> > >>> >> > int main() >>> >> > { >>> >> > maxlen=3; >>> >> > alphabet="op"; >>> >> > backtrack("",0); >>> >> > return 0; >>> >> > } >>> >> > >>> >> > >>> >> > On Fri, Aug 5, 2011 at 12:42 PM, Kamakshii Aggarwal >>> >> > <kamakshi...@gmail.com> wrote: >>> >> >> @gaurav:i could not understand ur sol.can u explain it again.. >>> >> >> >>> >> >> On Fri, Aug 5, 2011 at 12:32 PM, Gaurav Menghani >>> >> >> <gaurav.mengh...@gmail.com> >>> >> >> wrote: >>> >> >>> >>> >> >>> On Fri, Aug 5, 2011 at 12:20 PM, Kamakshii Aggarwal >>> >> >>> <kamakshi...@gmail.com> wrote: >>> >> >>> > given a set of letters and a length N, produce all possible >>> >> >>> > output.(Not >>> >> >>> > permutation). For example, give the letter (p,o) and length of >>> 3, >>> >> >>> > produce >>> >> >>> > the following output(in any order you want, not just my example >>> >> >>> > order) >>> >> >>> > >>> >> >>> > ppp ppo poo pop opp opo oop ooo >>> >> >>> > >>> >> >>> > another example would be given (a,b) and length 2 >>> >> >>> > >>> >> >>> > answer: ab aa bb ba >>> >> >>> > >>> >> >>> > -- >>> >> >>> > Regards, >>> >> >>> > Kamakshi >>> >> >>> > kamakshi...@gmail.com >>> >> >>> >>> >> >>> This can be done easily by backtracking >>> >> >>> >>> >> >>> void backtrack(string s, int l) >>> >> >>> { >>> >> >>> if(l == maxlen) { cout<<s<<endl; return; } >>> >> >>> >>> >> >>> s.push_back('-'); >>> >> >>> for(int i=0;i<alphabet.size();i++) >>> >> >>> { >>> >> >>> s[l]=alphabet[i]; >>> >> >>> backtrack(s,l+1); >>> >> >>> } >>> >> >>> } >>> >> >>> >>> >> >>> -- >>> >> >>> Gaurav Menghani >>> >> >>> >>> >> >>> -- >>> >> >>> You received this message because you are subscribed to the Google >>> >> >>> Groups >>> >> >>> "Algorithm Geeks" group. >>> >> >>> To post to this group, send email to algogeeks@googlegroups.com. >>> >> >>> To unsubscribe from this group, send email to >>> >> >>> algogeeks+unsubscr...@googlegroups.com. >>> >> >>> For more options, visit this group at >>> >> >>> http://groups.google.com/group/algogeeks?hl=en. >>> >> >>> >>> >> >> >>> >> >> >>> >> >> >>> >> >> -- >>> >> >> Regards, >>> >> >> Kamakshi >>> >> >> kamakshi...@gmail.com >>> >> >> >>> >> >> -- >>> >> >> You received this message because you are subscribed to the Google >>> >> >> Groups >>> >> >> "Algorithm Geeks" group. >>> >> >> To post to this group, send email to algogeeks@googlegroups.com. >>> >> >> To unsubscribe from this group, send email to >>> >> >> algogeeks+unsubscr...@googlegroups.com. >>> >> >> For more options, visit this group at >>> >> >> http://groups.google.com/group/algogeeks?hl=en. >>> >> >> >>> >> > >>> >> > >>> >> > >>> >> > -- >>> >> > Gaurav Menghani >>> >> > >>> >> > -- >>> >> > You received this message because you are subscribed to the Google >>> >> > Groups "Algorithm Geeks" group. >>> >> > To post to this group, send email to algogeeks@googlegroups.com. >>> >> > To unsubscribe from this group, send email to >>> >> > algogeeks+unsubscr...@googlegroups.com. >>> >> > For more options, visit this group at >>> >> > http://groups.google.com/group/algogeeks?hl=en. >>> >> > >>> >> > >>> >> >>> >> >>> >> >>> >> -- >>> >> Varun Jakhoria >>> >> ...it's only about 0's & 1's >>> >> >>> >> -- >>> >> You received this message because you are subscribed to the Google >>> Groups >>> >> "Algorithm Geeks" group. >>> >> To post to this group, send email to algogeeks@googlegroups.com. >>> >> To unsubscribe from this group, send email to >>> >> algogeeks+unsubscr...@googlegroups.com. >>> >> For more options, visit this group at >>> >> http://groups.google.com/group/algogeeks?hl=en. >>> >> >>> > >>> > -- >>> > You received this message because you are subscribed to the Google >>> Groups >>> > "Algorithm Geeks" group. >>> > To post to this group, send email to algogeeks@googlegroups.com. >>> > To unsubscribe from this group, send email to >>> > algogeeks+unsubscr...@googlegroups.com. >>> > For more options, visit this group at >>> > http://groups.google.com/group/algogeeks?hl=en. >>> > >>> >>> >>> >>> -- >>> Gaurav Menghani >>> >>> -- >>> You received this message because you are subscribed to the Google Groups >>> "Algorithm Geeks" group. >>> To post to this group, send email to algogeeks@googlegroups.com. >>> To unsubscribe from this group, send email to >>> algogeeks+unsubscr...@googlegroups.com. >>> For more options, visit this group at >>> http://groups.google.com/group/algogeeks?hl=en. >>> >>> >> -- >> You received this message because you are subscribed to the Google Groups >> "Algorithm Geeks" group. >> To post to this group, send email to algogeeks@googlegroups.com. >> To unsubscribe from this group, send email to >> algogeeks+unsubscr...@googlegroups.com. >> For more options, visit this group at >> http://groups.google.com/group/algogeeks?hl=en. >> > > > > -- > Tushar Bindal > Computer Engineering > Delhi College of Engineering > Mob: +919818442705 > E-Mail : tushicom...@gmail.com > Website: www.jugadengg.com > > > -- > You received this message because you are subscribed to the Google Groups > "Algorithm Geeks" group. > To post to this group, send email to algogeeks@googlegroups.com. > To unsubscribe from this group, send email to > algogeeks+unsubscr...@googlegroups.com. > For more options, visit this group at > http://groups.google.com/group/algogeeks?hl=en. > -- ........................ *MOHIT VERMA* -- You received this message because you are subscribed to the Google Groups "Algorithm Geeks" group. To post to this group, send email to algogeeks@googlegroups.com. To unsubscribe from this group, send email to algogeeks+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/algogeeks?hl=en.