বুধবার, ১৫ আগস্ট, ২০১৮

UVA 392 - Polynomial Showdown

#include<stdio.h>
#include<string.h>
#include<math.h>
int main()
{
    long a[10]={0};
    while(~scanf("%ld",&a[8]))
    {
        long i,p,p1=0;
        for(i=7;i>=0;i--)
        scanf("%ld",&a[i]);
        for(i=8;i>=0;i--)
        {
            if(a[i]!=0)
            {
                if(p1==1)
                printf(" ");
                if(i>1)
                {
                    if(a[i]==1)
                    {
                        if(p1==1)
                        printf("+ ");
                        printf("x^%ld",i);
                    }
                    else if(a[i]==-1)
                    {
                        if(p1==1)
                        printf("- ");
                        else
                        printf("-");
                        printf("x^%ld",i);
                    }
                    else if(a[i]>1)
                    {
                        if(p1==1)
                        printf("+ ");
                        printf("%ldx^%ld",a[i],i);
                    }
                    else if(a[i]<0)
                    {
                        if(p1==1)
                        printf("- ");
                        else
                        printf("-");
                        printf("%ldx^%ld",-1*a[i],i);
                    }
               }
               if(i==1)
               {
                   if(a[i]==1)
                   {
                       if(p1==1)
                       printf("+ ");
                       printf("x");
                   }
                   else if(a[i]==-1)
                   {
                       if(p1==1)
                       printf("- ");
                       else
                       printf("-");
                       printf("x");
                   }
                   else if(a[i]>1)
                   {
                       if(p1==1)
                       printf("+ ");
                       printf("%ldx",a[i]);
                   }
                   else if(a[i]<0)
                   {
                       if(p1==1)
                       printf("- ");
                       else
                       printf("-");
                       printf("%ldx",-1*a[i]);
                   }
               }
               if(i==0)
               {
                   if(a[i]==1)
                   {
                       if(p1==1)
                       printf("+ ");
                       printf("%ld",a[i]);
                   }
                   else if(a[i]==-1)
                   {
                       if(p1==1)
                       printf("- ");
                       else
                       printf("-");
                       printf("%ld",-1*a[i]);
                   }
                   else if(a[i]>1)
                   {
                       if(p1==1)
                       printf("+ ");
                       printf("%ld",a[i]);
                   }
                   else if(a[i]<0)
                   {
                       if(p1==1)
                       printf("- ");
                       else
                       printf("-");
                       printf("%ld",-1*a[i]);
                   }
               }
               p1=1;
            }
        }
        if(p1==0)
        printf("0");
        printf("\n");
    }
    return 0;
}

কোন মন্তব্য নেই:

একটি মন্তব্য পোস্ট করুন

Factorization with prime Sieve

vector <int> prime; char sieve[1000009]; int N=1000009; void primeSieve ( ) { sieve[0] = sieve[1] = 1; prime.push_back(2); ...