Advertisement
Guest User

Untitled

a guest
May 29th, 2015
280
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.25 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4.  
  5. int main()
  6. {
  7. int M;
  8. scanf("%d",&M);
  9. while(M--)
  10. {
  11. int a,b,c,d;
  12. scanf("%d %d %d %d",&a,&b,&c,&d);
  13.  
  14. int i,j,k,l,limit=1+2*d;
  15. int coe[3]= {a,b,c};
  16. long int res[limit];
  17. memset(res,0,limit*sizeof(int));
  18. long int tmp[limit];
  19. memset(tmp,0,limit*sizeof(int));
  20.  
  21. for(i=0; i<3; i++)
  22. tmp[i]=coe[i];
  23.  
  24. if (d==1)
  25. {
  26. for(i=0; i<3; i++)
  27. res[i]=coe[i];
  28. }
  29. if (d>1)
  30. {
  31. for(i=0; i<d-1; i++)
  32. {
  33. for(j=0; j<3+2*i; j++)
  34. {
  35. for(k=0; k<3; k++)
  36. res[j+k]+=tmp[j]*coe[k];
  37. }
  38. if (i!=d-2)
  39. {
  40. for(l=0; l<5+2*i; l++)
  41. {
  42. tmp[l]=res[l];
  43. res[l]=0;
  44. }
  45. }
  46. }
  47. }
  48.  
  49. for(i=0; i<limit; i++)
  50. {
  51. if (res[i]!=0 && i==0)
  52. printf("%ld",res[i]);
  53. if (res[i]!=0 && i!=0)
  54. printf(" %ld",res[i]);
  55. }
  56. printf("\n");
  57. }
  58. return 0;
  59. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement