#include <stdio.h>
#define MAXN 100
int sum[MAXN];
void comb(int s,int n, int p, int t){
int j;
if(p < n){
for(j=0;j<=s;j++){
sum[p] = j;
t = t+j;
comb(s,n,p+1,t);
t = t-j;
}
}else{
if(t==s){
printf("%d",sum[0]);
for(j=1; j < n ; j++){
printf("+%d",sum[j]);
}
printf("\n");
}
}
}
int main(){
int s,n;
while(1){
scanf("%d %d",&s,&n);
if(s==0) break;
comb(s,n,0,0);
}
}
--
You received this message because you are subscribed to the Google Groups
"Algorithm Geeks" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/algogeeks?hl=en.