@gaurav:can u please explain what is the purpose of this line.. s.push_back('-');
On Fri, Aug 5, 2011 at 1:10 PM, Nitin Nizhawan <nitin.nizha...@gmail.com>wrote: > Or one could just simulate a counting from 0 to (numchars^N)-1 in base > numchars. > ....... > code: > void printit(int N,char chars[],int index[]){ > for(int i=0;i<N;i++){ > printf("%c",chars[index[i]]); > } > printf("\n"); > } > void generate(int numchars,char chars[],int N){ > int index[100]={0}; > int allmax=0; > int maxdigit=numchars-1; > printit(N,chars,index); > while(!allmax){ > // add one; > index[0]++; > allmax=0; > for(int i=0;i<N;i++){ > if(index[i]>=numchars){ > index[i]=0; index[i+1]++; > } > if(i==0&&index[i]==maxdigit){ > allmax=1; > } > > allmax = (index[i]==maxdigit)?allmax&1:0; > > } > printit(N,chars,index); > } > } > int main(){ > char chars [] ={'p','o'}; > int numchars =sizeof(chars)/sizeof(char); > int N=3; > generate(numchars,chars,N); > } > > 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. >> >> > -- > 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.