반응형
https://leetcode.com/problems/perfect-number/description/
전수조사 문제였습니다.
📕 풀이방법
📔 입력 및 초기화
제한이 1천만이므로 O(n)으로 해결할 수 있습니다. 인수들을 더해 저장할 변수 sum을 선언 후 0으로 초기화해줍니다.
📔 풀이과정
1. 1 ~ num - 1까지 for loop를 수행합니다.
2. 나누어 떨어진다면 인수이므로 sum에 해당 인수를 더해줍니다.
📔 정답 출력 | 반환
sum과 num이 같은지 여부를 반환합니다.
📕 Code
📔 C++
class Solution {
public:
bool checkPerfectNumber(int num) {
int sum = 0;
for (int i = 1; i < num; i++) {
if(num % i == 0) {
sum += i;
}
}
return sum == num;
}
};
*더 나은 내용을 위한 지적, 조언은 언제나 환영합니다.
'Algorithm > Brute Force' 카테고리의 다른 글
(C++) - LeetCode (easy) 599. Minimum Index Sum of Two Lists (0) | 2023.05.16 |
---|---|
(C++) - LeetCode (easy) 520. Detect Capital (0) | 2023.04.13 |
(C++) - LeetCode (easy) 500. Keyboard Row (0) | 2023.04.04 |
(C++) - LeetCode (easy) 496. Next Greater Element I (0) | 2023.04.03 |
(C++) - LeetCode (easy) 463. Island Perimeter (0) | 2023.03.24 |