class Solution {
public:
bool checkPerfectNumber(int num) {
if (num == 1)
{
return false;
}
vector<int> vDivisors;
vDivisors.push_back(1);
int a = 2;
int b = num/2;
while (a<b)
{
int c = num%a;
if (c == 0)
{
vDivisors.push_back(a);
vDivisors.push_back(b);
}
a++;
b = num/a;
}
int sum = 0;
for (int i = 0; i < vDivisors.size(); i++)
{
sum += vDivisors[i];
}
if (sum == num)
{
return true;
}
else
{
return false;
}
}
};
public:
bool checkPerfectNumber(int num) {
if (num == 1)
{
return false;
}
vector<int> vDivisors;
vDivisors.push_back(1);
int a = 2;
int b = num/2;
while (a<b)
{
int c = num%a;
if (c == 0)
{
vDivisors.push_back(a);
vDivisors.push_back(b);
}
a++;
b = num/a;
}
int sum = 0;
for (int i = 0; i < vDivisors.size(); i++)
{
sum += vDivisors[i];
}
if (sum == num)
{
return true;
}
else
{
return false;
}
}
};