#include #define N 1000010 #define ll long long using namespace std; int n; int arr[N]; vector primes; ll val; int sieve() { for(int i=2;i > fact; for(int i=0;i<(int)primes.size();i++) { int c=0; while(val%primes[i]==0) { val/=primes[i]; c++; } if(c!=0) fact.push_back(make_pair(primes[i],c)); } if(val!=1) fact.push_back(make_pair(val,1)); ll sum=1; ll pro=1; for(int i=fact.size()-1;i>=0;i--) { for(int j=0;j