1. 程式人生 > >浙大PAT 1009題 1009. Product of Polynomials

浙大PAT 1009題 1009. Product of Polynomials

#include<stdio.h>
#include<math.h>
typedef struct{
 int ni;
 float ai;
}Info; 
int main(){
 int i,j,k1,k2,cnt=0;
 Info fst[12],scd[12];
 float ans[2008];
 for(i=0;i<=2000;i++){  
  ans[i]=0;  
 }  
 scanf("%d",&k1);
 for(i=0;i<k1;i++){
  scanf("%d %f",&fst[i].ni,&fst[i].ai);
 }
 scanf("%d",&k2);
 for(i=0;i<k2;i++){
  scanf("%d %f",&scd[i].ni,&scd[i].ai);
 } 
 for(i=0;i<k1;i++){  
  for(j=0;j<k2;j++){  
   ans[fst[i].ni+scd[j].ni]+=(fst[i].ai*scd[j].ai);  
  }  
 }  
 for(i=0;i<=2000;i++){  
  if(fabs(ans[i])>0) cnt++;  
 }  
 printf("%d",cnt);  
 for(i=2000;i>=0;i--){  
  if(fabs(ans[i])>0) 
   printf(" %d %.1f",i,ans[i]);  
 }  
 printf("\n");  
 return 0;  
}