Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
- int main()
- {
- int M;
- scanf("%d",&M);
- while(M--)
- {
- int a,b,c,d;
- scanf("%d %d %d %d",&a,&b,&c,&d);
- int i,j,k,l,limit=1+2*d;
- int coe[3]= {a,b,c};
- long int res[limit];
- memset(res,0,limit*sizeof(int));
- long int tmp[limit];
- memset(tmp,0,limit*sizeof(int));
- for(i=0; i<3; i++)
- tmp[i]=coe[i];
- if (d==1)
- {
- for(i=0; i<3; i++)
- res[i]=coe[i];
- }
- if (d>1)
- {
- for(i=0; i<d-1; i++)
- {
- for(j=0; j<3+2*i; j++)
- {
- for(k=0; k<3; k++)
- res[j+k]+=tmp[j]*coe[k];
- }
- if (i!=d-2)
- {
- for(l=0; l<5+2*i; l++)
- {
- tmp[l]=res[l];
- res[l]=0;
- }
- }
- }
- }
- for(i=0; i<limit; i++)
- {
- if (res[i]!=0 && i==0)
- printf("%ld",res[i]);
- if (res[i]!=0 && i!=0)
- printf(" %ld",res[i]);
- }
- printf("\n");
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement