FOJ 1075

时间:2023-03-08 17:04:53
#include<stdio.h>
#include<iostream>
using namespace std;
int a[]={,};
int hash[]={};
void func()
{
int i,j,k=,flag;
hash[]=hash[]=;
for(i=;k<;i+=)
{
flag=;
for(j=;a[j]*a[j]<i;j++)
{
if(i%a[j]==)
{
flag=;
break;
}
}
if(flag)
{
a[k++]=i;
hash[i]=;
}
}
}
int main()
{
func();
//printf("%d\n",a[6990]);
int n;
scanf("%d",&n);
while(n--)
{
int p=;
scanf("%d",&p);
while(hash[p]==)
{
for(int j=;j<&&p>=a[j];j++)
{
while(p%a[j]==&&hash[p]==)
{
printf("%d*",a[j]);
p=p/a[j];
}
}
}
printf("%d\n",p);
}
return ;
}