#include<stdio.h>
#include<malloc.h>
int Find_yueshu(int a){
int sum=0;
int i;
for(i=1;i*i<a;i++)//最小公约数(max)时,自己乘自己
if(a%i==0)
sum+=2;
if(i*i==a)sum++;
return sum;
}
int main(){
int n;
scanf("%d",&n);
int *num=(int *)malloc(sizeof(int)*n);
for(int i=0;i<n;i++){
int temp;
scanf("%d",&temp);
num[i]=temp;
}
for(int j=0;j<n;j++){
printf("%d",Find_yueshu(num[j]));
printf("\n");
}
} #include<stdio.h>
#include<stdlib.h>
int Find_yueshu(int a){
int sum=0;
int i;
for(i=1;i*i<a;i++)
if(a%i==0)
sum+=2;
if(i*i==a)sum++;
return sum;
}
int main(){
int n;
scanf("%d",&n);
int *num=(int *)malloc(sizeof(int)*n);
for(int i=0;i<n;i++){
int temp;
scanf("%d",&temp);
num[i]=temp;
}
for(int j=0;j<n;j++){
printf("%d",Find_yueshu(num[j]));
printf("\n");
}
}