#include<iostream>
#include<cstring>
#include<cmath>
#include<cstdio>
using namespace std;
int a[1000001]={0};
void init()
{
for(int i=1;i<1000001;i++)
{
for(int j=1;i*j<1000001;j++)
{
a[i*j]++;
}
}
}
int main(){
int n;
init();
while(scanf("%d",&n)!=-1)
{
if(a[n]==2)
{
printf("1 1\n");
continue;
}
int flag;
for(int i=2;;i++)
{
if(n%i==0)
{
flag=i;
break;
}
}
printf("%d %d\n",a[n]-1,n/flag);
}
return 0;
}
FZU1607 Greedy division(逆向思维)
最新推荐文章于 2021-06-29 18:54:46 发布