思路:
可以化簡為 N+1 = (i+1)*(j+1);
坑點:
注意i*i爆int了。。。
#include <iostream>
#include <cstdio>
#include <string.h>
#include <queue>
#include <cmath>
#include <algorithm>
#include <map>
typedef long long int lli;
using namespace std;
lli ff(lli n){
lli res = ;
int cnt = ;
for(lli i = ;i * i <= n;i++){
cnt = ;
while(n % i == ){
cnt++;
n /= i;
}
res *= (cnt+);
}
if(n != ){
res *= ;
}
return res-;
}
int main(){
int t;
cin>>t;
lli n;
while(t--){
scanf("%lld",&n);
if(n == ){
printf("0\n");
continue;
}
lli ans = ff(n+);
ans = (ans + ) / ;
printf("%lld\n",ans);
}
}