#pragma GCC optimize ("Ofast")
#include<bits/stdc++.h>
using namespace std;
void * wmem;
char memarr[ 96000000 ] ;
template < class T> inline void walloc1d( T ** arr, int x, void ** mem = & wmem) {
static int skip[ 16 ] = { 0 , 15 , 14 , 13 , 12 , 11 , 10 , 9 , 8 , 7 , 6 , 5 , 4 , 3 , 2 , 1 } ;
( * mem) = ( void * ) ( ( ( char * ) ( * mem) ) + skip[ ( ( unsigned long long ) ( * mem) ) & 15 ] ) ;
( * arr) = ( T* ) ( * mem) ;
( * mem) = ( ( * arr) + x) ;
}
template < class T> int Factor_L( T N, T fac[ ] , int fs[ ] ) {
T i;
int sz = 0 ;
if ( N% 2 == 0 ) {
fac[ sz] = 2 ;
fs[ sz] = 1 ;
N / = 2 ;
while ( N% 2 == 0 ) {
N / = 2 ;
fs[ sz] ++ ;
}
sz++ ;
}
for ( i= 3 ; i* i<= N; i+ = 2 ) {
if ( N% i== 0 ) {
fac[ sz] = i;
fs[ sz] = 1 ;
N / = i;
while ( N% i== 0 ) {
N / = i;
fs[ sz] ++ ;
}
sz++ ;
}
}
if ( N > 1 ) {
fac[ sz] = N;
fs[ sz] = 1 ;
sz++ ;
}
return sz;
}
template < class T> int Divisor_L( T N, T res[ ] , void * mem = wmem) {
int i;
int j;
int k;
int s;
int sz = 0 ;
T * fc;
int * fs;
int fsz;
walloc1d( & fc, 100 , & mem) ;
walloc1d( & fs, 100 , & mem) ;
fsz = Factor_L( N, fc, fs) ;
res[ sz++ ] = 1 ;
for ( i= ( 0 ) ; i< ( fsz) ; i++ ) {
s = sz;
k = s * fs[ i] ;
for ( j= ( 0 ) ; j< ( k) ; j++ ) {
res[ sz++ ] = res[ j] * fc[ i] ;
}
}
sort( res, res+ sz) ;
return sz;
}
#define main dummy_main
int main( ) {
wmem = memarr;
return 0 ;
}
#undef main
int ys;
int y[ 100000 ] ;
class Solution{
public :
int sumFourDivisors( vector< int > & nums) {
int i;
dummy_main( ) ;
int res = 0 ;
for ( i= ( 0 ) ; i< ( nums.size ( ) ) ; i++ ) {
ys = Divisor_L( nums[ i] , y) ;
if ( ys== 4 ) {
{
int Q5VJL1cS;
int e98WHCEY;
if ( ys== 0 ) {
e98WHCEY = 0 ;
}
else {
e98WHCEY = y[ 0 ] ;
for ( Q5VJL1cS= ( 1 ) ; Q5VJL1cS< ( ys) ; Q5VJL1cS++ ) {
e98WHCEY + = y[ Q5VJL1cS] ;
}
}
res + = e98WHCEY;
}
}
}
return res;
}
}
;
// cLay varsion 20200325-1
// --- original code ---
// #define main dummy_main
// {}
// #undef main
//
// int ys, y[1d5];
//
// class Solution {
// public:
// int sumFourDivisors(vector<int>& nums) {
// dummy_main();
// int res = 0;
// rep(i,nums.size()){
// ys = Divisor(nums[i], y);
// if(ys==4) res += sum(y(ys));
// }
// return res;
// }
// };
I3ByYWdtYSBHQ0Mgb3B0aW1pemUgKCJPZmFzdCIpCiNpbmNsdWRlPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CnZvaWQgKndtZW07CmNoYXIgbWVtYXJyWzk2MDAwMDAwXTsKdGVtcGxhdGU8Y2xhc3MgVD4gaW5saW5lIHZvaWQgd2FsbG9jMWQoVCAqKmFyciwgaW50IHgsIHZvaWQgKiptZW0gPSAmd21lbSl7CiAgc3RhdGljIGludCBza2lwWzE2XSA9IHswLCAxNSwgMTQsIDEzLCAxMiwgMTEsIDEwLCA5LCA4LCA3LCA2LCA1LCA0LCAzLCAyLCAxfTsKICAoKm1lbSkgPSAodm9pZCopKCAoKGNoYXIqKSgqbWVtKSkgKyBza2lwWygodW5zaWduZWQgbG9uZyBsb25nKSgqbWVtKSkgJiAxNV0gKTsKICAoKmFycik9KFQqKSgqbWVtKTsKICAoKm1lbSk9KCgqYXJyKSt4KTsKfQp0ZW1wbGF0ZTxjbGFzcyBUPiBpbnQgRmFjdG9yX0woVCBOLCBUIGZhY1tdLCBpbnQgZnNbXSl7CiAgVCBpOwogIGludCBzeiA9IDA7CiAgaWYoTiUyPT0wKXsKICAgIGZhY1tzel0gPSAyOwogICAgZnNbc3pdID0gMTsKICAgIE4gLz0gMjsKICAgIHdoaWxlKE4lMj09MCl7CiAgICAgIE4gLz0gMjsKICAgICAgZnNbc3pdKys7CiAgICB9CiAgICBzeisrOwogIH0KICBmb3IoaT0zO2kqaTw9TjtpKz0yKXsKICAgIGlmKE4laT09MCl7CiAgICAgIGZhY1tzel0gPSBpOwogICAgICBmc1tzel0gPSAxOwogICAgICBOIC89IGk7CiAgICAgIHdoaWxlKE4laT09MCl7CiAgICAgICAgTiAvPSBpOwogICAgICAgIGZzW3N6XSsrOwogICAgICB9CiAgICAgIHN6Kys7CiAgICB9CiAgfQogIGlmKE4gPiAxKXsKICAgIGZhY1tzel0gPSBOOwogICAgZnNbc3pdID0gMTsKICAgIHN6Kys7CiAgfQogIHJldHVybiBzejsKfQp0ZW1wbGF0ZTxjbGFzcyBUPiBpbnQgRGl2aXNvcl9MKFQgTiwgVCByZXNbXSwgdm9pZCAqbWVtID0gd21lbSl7CiAgaW50IGk7CiAgaW50IGo7CiAgaW50IGs7CiAgaW50IHM7CiAgaW50IHN6ID0gMDsKICBUICpmYzsKICBpbnQgKmZzOwogIGludCBmc3o7CiAgd2FsbG9jMWQoJmZjLCAxMDAsICZtZW0pOwogIHdhbGxvYzFkKCZmcywgMTAwLCAmbWVtKTsKICBmc3ogPUZhY3Rvcl9MKE4sIGZjLCBmcyk7CiAgcmVzW3N6KytdID0gMTsKICBmb3IoaT0oMCk7aTwoZnN6KTtpKyspewogICAgcyA9IHN6OwogICAgayA9IHMgKiBmc1tpXTsKICAgIGZvcihqPSgwKTtqPChrKTtqKyspewogICAgICByZXNbc3orK10gPSByZXNbal0gKiBmY1tpXTsKICAgIH0KICB9CiAgc29ydChyZXMsIHJlcytzeik7CiAgcmV0dXJuIHN6Owp9CiNkZWZpbmUgbWFpbiBkdW1teV9tYWluCmludCBtYWluKCl7CiAgd21lbSA9IG1lbWFycjsKICByZXR1cm4gMDsKfQojdW5kZWYgbWFpbgppbnQgeXM7CmludCB5WzEwMDAwMF07CmNsYXNzIFNvbHV0aW9uewogIHB1YmxpYzoKICBpbnQgc3VtRm91ckRpdmlzb3JzKHZlY3RvcjxpbnQ+JiBudW1zKXsKICAgIGludCBpOwogICAgZHVtbXlfbWFpbigpOwogICAgaW50IHJlcyA9IDA7CiAgICBmb3IoaT0oMCk7aTwobnVtcy5zaXplKCkpO2krKyl7CiAgICAgIHlzID1EaXZpc29yX0wobnVtc1tpXSwgeSk7CiAgICAgIGlmKHlzPT00KXsKICAgICAgICB7CiAgICAgICAgICBpbnQgUTVWSkwxY1M7CiAgICAgICAgICBpbnQgZTk4V0hDRVk7CiAgICAgICAgICBpZih5cz09MCl7CiAgICAgICAgICAgIGU5OFdIQ0VZID0gMDsKICAgICAgICAgIH0KICAgICAgICAgIGVsc2V7CiAgICAgICAgICAgIGU5OFdIQ0VZID0geVswXTsKICAgICAgICAgICAgZm9yKFE1VkpMMWNTPSgxKTtRNVZKTDFjUzwoeXMpO1E1VkpMMWNTKyspewogICAgICAgICAgICAgIGU5OFdIQ0VZICs9IHlbUTVWSkwxY1NdOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgICByZXMgKz1lOThXSENFWTsKICAgICAgICB9CiAgICAgIH0KICAgIH0KICAgIHJldHVybiByZXM7CiAgfQp9CjsKLy8gY0xheSB2YXJzaW9uIDIwMjAwMzI1LTEKCi8vIC0tLSBvcmlnaW5hbCBjb2RlIC0tLQovLyAjZGVmaW5lIG1haW4gZHVtbXlfbWFpbgovLyB7fQovLyAjdW5kZWYgbWFpbgovLyAKLy8gaW50IHlzLCB5WzFkNV07Ci8vIAovLyBjbGFzcyBTb2x1dGlvbiB7Ci8vIHB1YmxpYzoKLy8gICBpbnQgc3VtRm91ckRpdmlzb3JzKHZlY3RvcjxpbnQ+JiBudW1zKSB7Ci8vICAgICBkdW1teV9tYWluKCk7Ci8vICAgICBpbnQgcmVzID0gMDsKLy8gICAgIHJlcChpLG51bXMuc2l6ZSgpKXsKLy8gICAgICAgeXMgPSBEaXZpc29yKG51bXNbaV0sIHkpOwovLyAgICAgICBpZih5cz09NCkgcmVzICs9IHN1bSh5KHlzKSk7Ci8vICAgICB9Ci8vICAgICByZXR1cm4gcmVzOwovLyAgIH0KLy8gfTsK