LeetCode 507. 完美数
生活随笔
收集整理的這篇文章主要介紹了
LeetCode 507. 完美数
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1. 題目
對于一個 正整數,如果它和除了它自身以外的所有正因子之和相等,我們稱它為“完美數”。
給定一個 整數 n, 如果他是完美數,返回 True,否則返回 False
示例: 輸入: 28 輸出: True 解釋: 28 = 1 + 2 + 4 + 7 + 14提示: 輸入的數字 n 不會超過 100,000,000. (1e8)來源:力扣(LeetCode) 鏈接:https://leetcode-cn.com/problems/perfect-number
著作權歸領扣網絡所有。商業轉載請聯系官方授權,非商業轉載請注明出處。
2. 解題
class Solution { public:bool checkPerfectNumber(int num) {if(num == 0)return false;int sum = 0;for(int i = 1; i < sqrt(num); ++i) {if(num%i == 0){sum += i;if(i != num/i)//兩個因子不一樣sum += num/i;}}return sum-num == num;} };4 ms 8.2 MB
總結
以上是生活随笔為你收集整理的LeetCode 507. 完美数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: LeetCode 1053. 交换一次的
- 下一篇: LeetCode 1324. 竖直打印单