杭电 1164 Eddy's research I

#include<stdio.h>

#include<string.h>

#include<stdlib.h>

int prim[65540];

void fun()

{

    for(int i=1;i<=65540;i++)

    {

        prim[i]=0;

    }

    for(int i=2;i<=65540/2;i++)

    {

        for(int j=i+i;j<=65540;j+=i)

        {

            prim[j]=1;

        }

    }

}

int main()

{

    void fun();

    int n;

    while(scanf("%d",&n)!=EOF)

    {

         int m=1,p=n;

         int i=2;

         while(i<=p)

         {

            if(prim[i]==0&&n%i==0)

            {

                if(m==1)

                {

                    printf("%d",i);

                    m++;

                }

                else

                {

                    printf("*%d",i);

                }

                 if(n==1)

                    break;

                 else

                 {

                     n=n/i;

                 }

            }

            else

            {

               i++;

            }

         }

         printf("\n");

    }

    //system("pause");

    return 0;

}

你可能感兴趣的:(search)