POJ1060 Modular multiplication of polynomials

不想多说 全在代码里


#include 
#include 
#include 

using namespace std;

int g[1001],f[1001],s[2001],h[1001];
int lg,ls,lh,lf;
int i,j;

void mul()  //乘
{

    for( i=0; i=lh)
    {
        memset(res,0,sizeof(res));
        t=ls-lh;;
        for( i=0; i=t; i--)
            s[i]^=res[i];
        for( i=ls-1; i>=0; i--)
        {
            if(s[i])
            {
                ls=i+1;
                break;
            }
            ls=0;
        }
    }
    return ;

}
int main()
{
    //freopen("in.txt","r",stdin);
    int n;
    scanf("%d",&n);
    while(n--)
    {
        memset(s, 0, sizeof(s));
		memset(f, 0, sizeof(f));
        memset(g, 0, sizeof(g));
        memset(h, 0, sizeof(h));

        scanf("%d",&lg);
        for( i=lg-1; i>=0; i--)
            scanf("%d",&g[i]);
        scanf("%d",&lf);
        for( i=lf-1; i>=0; i--)
            scanf("%d",&f[i]);
        scanf("%d",&lh);
        for( i=lh-1; i>=0; i--)
            scanf("%d",&h[i]);
        mul();
        mod();
        printf("%d",ls);
        if(ls==0)
            printf("0");
        else
            for( i=ls-1; i>=0; i--)
            {
                printf(" %d",s[i]);
            }
        printf("\n");
    }
    return 0;
}


你可能感兴趣的:(ACM初)