Four Divisors LeetCode solution in C++
1class Solution {2public:3int sumFourDivisors(vector<int> &nums) {4int n = nums.size();5int sum = 0, cnt = 0, temp = 0;6for (int i = 0; i < n; i++) {7int x = nums[i];8int sq = sqrt(x);910for (int j = 1; j <= sq; j++) {11if (x % j == 0) {12cnt += 2;13temp += (j + x / j);1415if (j == x / j) {16cnt--;17temp -= j;18}1920if (cnt > 4) break;21}22}23if (cnt == 4) {24sum += temp;25}26temp = 0;27cnt = 0;28}29return sum;30}31};